Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755143AbdC3XEO (ORCPT ); Thu, 30 Mar 2017 19:04:14 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:42144 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750994AbdC3XEN (ORCPT ); Thu, 30 Mar 2017 19:04:13 -0400 Date: Thu, 30 Mar 2017 16:04:11 -0700 From: Andrew Morton To: Dmitry Vyukov Cc: akinobu.mita@gmail.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2] fault-inject: support systematic fault injection Message-Id: <20170330160411.06fb19fa0f80eafe7190d045@linux-foundation.org> In-Reply-To: <20170328130128.101773-1-dvyukov@google.com> References: <20170328130128.101773-1-dvyukov@google.com> X-Mailer: Sylpheed 3.4.1 (GTK+ 2.24.23; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1013 Lines: 38 On Tue, 28 Mar 2017 15:01:28 +0200 Dmitry Vyukov wrote: > +static ssize_t proc_fail_nth_write(struct file *file, const char __user *buf, > + size_t count, loff_t *ppos) > +{ > + struct task_struct *task; > + int err, n; > + > + task = get_proc_task(file_inode(file)); > + if (!task) > + return -ESRCH; > + put_task_struct(task); > + if (task != current) > + return -EPERM; > + err = kstrtoint_from_user(buf, count, 10, &n); > + if (err) > + return err; > + if (n < 0 || n == INT_MAX) > + return -EINVAL; > + current->fail_nth = n + 1; > + return len; > +} Well that didn't go too well. --- a/fs/proc/base.c~fault-inject-support-systematic-fault-injection-fix +++ a/fs/proc/base.c @@ -1377,7 +1377,7 @@ static ssize_t proc_fail_nth_write(struc if (n < 0 || n == INT_MAX) return -EINVAL; current->fail_nth = n + 1; - return len; + return count; } static ssize_t proc_fail_nth_read(struct file *file, char __user *buf, Are you sure I merged the correct version of this?