title: simple_read_from_buffer/simple_write_to_buffer vs. copy_to_user/copy_from_user
body: <p>I recently wrote a module implementing these functions.</p>
  <p>What is the difference between the two?  From my understanding, the <code>copy_..._user</code> functions are more secure.  Please correct me if I'm mistaken.</p>
  <p>Furthermore, is it a bad idea to mix the two functions in one program? For example, I used <code>simple_read_from_buffer</code> in my misc dev <code>read</code> function, and <code>copy_from_user</code> in my write function.</p>
  <p>Edit: I believe I've found the answer to my question from reading <code>fs/libfs.c</code> (I wasn't aware that this was where the source code was located for these functions); from my understanding the <code>simple_...()</code> functions are essentially a wrapper around the <code>copy_...()</code> functions.  I think it was appropriate in my case to use <code>copy_from_user</code> for the misc device write function as I needed to validate that the input matched a specific string before returning it to the user buffer.</p>
  <p>I will still leave this question open though in case someone has a better explanation or wants to correct me!</p>