From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965498Ab3FTMDv (ORCPT ); Thu, 20 Jun 2013 08:03:51 -0400 Received: from intranet.asianux.com ([58.214.24.6]:25503 "EHLO intranet.asianux.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965372Ab3FTMDt (ORCPT ); Thu, 20 Jun 2013 08:03:49 -0400 X-Spam-Score: -100.8 Message-ID: <51C2EF71.4010308@asianux.com> Date: Thu, 20 Jun 2013 20:02:57 +0800 From: Chen Gang User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130110 Thunderbird/17.0.2 MIME-Version: 1.0 To: Thomas Gleixner , "'Jiri Kosina'" CC: "linux-kernel@vger.kernel.org" Subject: Re: [PATCH v2] kernel/itimer.c: beautify code, not need check 'value', so save one instruction, simpler and easier for readers. References: <51C2E6F9.80107@asianux.com> In-Reply-To: <51C2E6F9.80107@asianux.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Oh, sorry, maybe it is a trivial patch, also need send to trivial@kernel.org. On 06/20/2013 07:26 PM, Chen Gang wrote: > > Since copy_to_user() will check 'value', we do not need check it outside > again, so can save one comparing instruction at least. > > Also can let code simpler and easier for readers: if checking parameter > 'value', it will easily lead readers to think about why not return > -EINVAL instead of -EFAULT, when checking parameter failed. > > Signed-off-by: Chen Gang > --- > kernel/itimer.c | 13 ++++++------- > 1 files changed, 6 insertions(+), 7 deletions(-) > > diff --git a/kernel/itimer.c b/kernel/itimer.c > index 8d262b4..3b12271 100644 > --- a/kernel/itimer.c > +++ b/kernel/itimer.c > @@ -102,15 +102,14 @@ int do_getitimer(int which, struct itimerval *value) > > SYSCALL_DEFINE2(getitimer, int, which, struct itimerval __user *, value) > { > - int error = -EFAULT; > + int error; > struct itimerval get_buffer; > > - if (value) { > - error = do_getitimer(which, &get_buffer); > - if (!error && > - copy_to_user(value, &get_buffer, sizeof(get_buffer))) > - error = -EFAULT; > - } > + error = do_getitimer(which, &get_buffer); > + if (!error && > + copy_to_user(value, &get_buffer, sizeof(get_buffer))) > + error = -EFAULT; > + > return error; > } > > -- Chen Gang Asianux Corporation