Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=85badbdf5120d246ce2bb3f1a7689a805f9c9006
Commit:     85badbdf5120d246ce2bb3f1a7689a805f9c9006
Parent:     92f4c701aad794de9e4cf7341d0a486aed027c46
Author:     Akinobu Mita <[EMAIL PROTECTED]>
AuthorDate: Wed May 9 02:33:33 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Wed May 9 12:30:49 2007 -0700

    use simple_read_from_buffer in kernel/
    
    Cleanup using simple_read_from_buffer() for /dev/cpuset/tasks and
    /proc/config.gz.
    
    Cc: Paul Jackson <[EMAIL PROTECTED]>
    Cc: Randy Dunlap <[EMAIL PROTECTED]>
    Signed-off-by: Akinobu Mita <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 kernel/configs.c |   15 +++------------
 kernel/cpuset.c  |    7 +------
 2 files changed, 4 insertions(+), 18 deletions(-)

diff --git a/kernel/configs.c b/kernel/configs.c
index 8fa1fb2..e84d3f9 100644
--- a/kernel/configs.c
+++ b/kernel/configs.c
@@ -61,18 +61,9 @@ static ssize_t
 ikconfig_read_current(struct file *file, char __user *buf,
                      size_t len, loff_t * offset)
 {
-       loff_t pos = *offset;
-       ssize_t count;
-
-       if (pos >= kernel_config_data_size)
-               return 0;
-
-       count = min(len, (size_t)(kernel_config_data_size - pos));
-       if (copy_to_user(buf, kernel_config_data + MAGIC_SIZE + pos, count))
-               return -EFAULT;
-
-       *offset += count;
-       return count;
+       return simple_read_from_buffer(buf, len, offset,
+                                      kernel_config_data + MAGIC_SIZE,
+                                      kernel_config_data_size);
 }
 
 static const struct file_operations ikconfig_file_ops = {
diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 88b416d..f57854b 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -1772,12 +1772,7 @@ static ssize_t cpuset_tasks_read(struct file *file, char 
__user *buf,
 {
        struct ctr_struct *ctr = file->private_data;
 
-       if (*ppos + nbytes > ctr->bufsz)
-               nbytes = ctr->bufsz - *ppos;
-       if (copy_to_user(buf, ctr->buf + *ppos, nbytes))
-               return -EFAULT;
-       *ppos += nbytes;
-       return nbytes;
+       return simple_read_from_buffer(buf, nbytes, ppos, ctr->buf, ctr->bufsz);
 }
 
 static int cpuset_tasks_release(struct inode *unused_inode, struct file *file)
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to