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 = {