From f80afffaf4b2e898fb1f1b95579c75903d190b94 Mon Sep 17 00:00:00 2001 From: Vincent Li Date: Tue, 22 Sep 2009 16:45:38 -0700 Subject: [PATCH] --- yaml --- r: 164761 b: refs/heads/master c: cba8aafe1e07dfc8bae5ba78be8e02883bd34d31 h: refs/heads/master i: 164759: 09b732997ce5cbc4c6a632d302f0d83b9a27171e v: v3 --- [refs] | 2 +- trunk/fs/proc/base.c | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index fbac9e053403..5c073492b87d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fb92a4b068be96799da3748c11cbd69760e44d7b +refs/heads/master: cba8aafe1e07dfc8bae5ba78be8e02883bd34d31 diff --git a/trunk/fs/proc/base.c b/trunk/fs/proc/base.c index 5bc587049b37..837469a96598 100644 --- a/trunk/fs/proc/base.c +++ b/trunk/fs/proc/base.c @@ -1187,17 +1187,16 @@ static ssize_t proc_fault_inject_write(struct file * file, count = sizeof(buffer) - 1; if (copy_from_user(buffer, buf, count)) return -EFAULT; - make_it_fail = simple_strtol(buffer, &end, 0); - if (*end == '\n') - end++; + make_it_fail = simple_strtol(strstrip(buffer), &end, 0); + if (*end) + return -EINVAL; task = get_proc_task(file->f_dentry->d_inode); if (!task) return -ESRCH; task->make_it_fail = make_it_fail; put_task_struct(task); - if (end - buffer == 0) - return -EIO; - return end - buffer; + + return count; } static const struct file_operations proc_fault_inject_operations = {