diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2006-12-06 20:36:37 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-07 08:39:33 -0800 |
commit | 064b022c7adb2d853378078a9dc141f8288d1c73 (patch) | |
tree | 67a8a2a05c0acd5eeee569317cf3cd87ff66cabb /kernel/profile.c | |
parent | 7116e994b47f3988389be4ceee67dac64b56e0d0 (diff) | |
download | lwn-064b022c7adb2d853378078a9dc141f8288d1c73.tar.gz lwn-064b022c7adb2d853378078a9dc141f8288d1c73.zip |
[PATCH] profile: fix uaccess handling
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/profile.c')
-rw-r--r-- | kernel/profile.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/profile.c b/kernel/profile.c index f940b462eec9..15b012df4ff1 100644 --- a/kernel/profile.c +++ b/kernel/profile.c @@ -442,7 +442,8 @@ read_profile(struct file *file, char __user *buf, size_t count, loff_t *ppos) read = 0; while (p < sizeof(unsigned int) && count > 0) { - put_user(*((char *)(&sample_step)+p),buf); + if (put_user(*((char *)(&sample_step)+p),buf)) + return -EFAULT; buf++; p++; count--; read++; } pnt = (char *)prof_buffer + p - sizeof(atomic_t); |