From mboxrd@z Thu Jan 1 00:00:00 1970 From: Seunghun Lee Subject: Re: [PATCH] vfs: remove redundant sanity check in do_mount Date: Sat, 13 Sep 2014 13:11:32 +0900 Message-ID: <5413C3F4.2070009@gmail.com> References: <1410537212-3153-1-git-send-email-waydi1@gmail.com> <20140912162834.GE7996@ZenIV.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org To: Al Viro Return-path: Received: from mail-pa0-f51.google.com ([209.85.220.51]:61638 "EHLO mail-pa0-f51.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750997AbaIMELh (ORCPT ); Sat, 13 Sep 2014 00:11:37 -0400 In-Reply-To: <20140912162834.GE7996@ZenIV.linux.org.uk> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On 09/13/2014 01:28 AM, Al Viro wrote: > On Sat, Sep 13, 2014 at 12:53:32AM +0900, Seunghun Lee wrote: >> In sys_mount, getname() checks dir_name. >> So do_mount needn't check dir_name again. > ... and simple grep shows four more call sites. At the very least, the > commit message needs to cover those as well, *if* the check is, indeed, > redundant. From the look through those guys it looks like it is, but... > I wonder if it would make more sense to pass char __user * instead of > char * here. And do getname() inside do_mount(). As it is, we do > getname() in all callers *and* never look into the result of said getname() > until passing it to do_mount(). So how about just passing userland pointer > all the way down to do_mount() (grep for callers and watch out for ones > in arch/alpha/kernel/osf_sys.c) and doing getname() in do_mount() itself? Ok, I will rework the patch. Thanks.