Received: by 2002:a05:6520:4211:b029:f4:110d:56bc with SMTP id o17csp1617407lkv; Wed, 19 May 2021 14:10:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyDGDkd9vHEnXzg1uIo9dq+OOJQ6CZxajXbGq91NVK2hh7hYnQRAUc7um9dgrC6V5gHrtTB X-Received: by 2002:a05:6e02:1d9b:: with SMTP id h27mr1235245ila.243.1621458609367; Wed, 19 May 2021 14:10:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621458609; cv=none; d=google.com; s=arc-20160816; b=RbecGt33ZawZRAumkDVnFpk1P6FQHpPSUQUaUm6DIZCgjl7mkx0Zo7UdhIRLwPKP1t wSlm675/fc7vck3b88/6XDFVhTUiz59WiCErzj0yV17tV5+8KtLHtjXreHHQiT3nPkgf cMV0MpPu0fgnBWIuGE0RoBx4hDVYHlsTjvV3IgPuG0dRkZQMsdxTcLOTFV0wLKBMkDnS 3L8tvokbn9dnOVZNxwyLmj5rJaRlyH33FIvGfg+hCUaSspBuNR3Szbsu+d+sUcTIfdHg VY+2zZ3gp0aEjADO5Y8Hv+iWnq+nT2asdXmZq+C1O7r2tXbWI8hKZNlDZChpEWYObVD7 tOFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=mdYaReWXEsDcGfEi7jmdfQ21vdbcmpR+Z1x8+0AAjcM=; b=aqoFtDtNMjK4yaPTaXTSuMNZsxieJ+Trj87vT/aQXqmo+htEsFXTQ8i9DVWkdAGeJE jRjNBkeMTonIetuArJuPSIkQguEsVrQ2GWqlbDkAe2qD0BFtus33vW38jTaF0bj93nnd uSMK51TvuNk9oEw1GIZfaElPmupmC/IB9ho42noy01J89dpQRikq4faDbqwZOFTFb4CD m+g8V3ekRR8TFTCfO947Q3rEm/vVdGp/zXcd4B6MHdExsVhj6fXR3YqHuylIbfTnpOvl 79Zmo8klG5bamD44RKxDPoiIAMCRQoIn7gpCFQjQAlduNQTeJC06pGjsav85xgMZLrBD Sd2g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a27si511207jab.118.2021.05.19.14.09.56; Wed, 19 May 2021 14:10:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352882AbhESAwV (ORCPT + 99 others); Tue, 18 May 2021 20:52:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53912 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233111AbhESAu5 (ORCPT ); Tue, 18 May 2021 20:50:57 -0400 Received: from zeniv-ca.linux.org.uk (zeniv-ca.linux.org.uk [IPv6:2607:5300:60:148a::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A4F09C0613CE; Tue, 18 May 2021 17:49:38 -0700 (PDT) Received: from viro by zeniv-ca.linux.org.uk with local (Exim 4.94 #2 (Red Hat Linux)) id 1ljAOU-00G4Fi-6F; Wed, 19 May 2021 00:49:02 +0000 From: Al Viro To: Linus Torvalds Cc: Jia He , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , Jonathan Corbet , Heiko Carstens , Vasily Gorbik , Christian Borntraeger , "Eric W . Biederman" , "Darrick J. Wong" , "Peter Zijlstra (Intel)" , Ira Weiny , Eric Biggers , "Ahmed S. Darwish" , "open list:DOCUMENTATION" , Linux Kernel Mailing List , linux-s390 , linux-fsdevel Subject: [PATCH 08/14] d_path: make prepend_name() boolean Date: Wed, 19 May 2021 00:48:55 +0000 Message-Id: <20210519004901.3829541-8-viro@zeniv.linux.org.uk> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210519004901.3829541-1-viro@zeniv.linux.org.uk> References: <20210519004901.3829541-1-viro@zeniv.linux.org.uk> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: Al Viro Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org It returns only 0 or -ENAMETOOLONG and both callers only check if the result is negative. Might as well return true on success and false on failure... Signed-off-by: Al Viro --- fs/d_path.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/fs/d_path.c b/fs/d_path.c index 327cc3744554..83db83446afd 100644 --- a/fs/d_path.c +++ b/fs/d_path.c @@ -34,15 +34,15 @@ static void prepend(char **buffer, int *buflen, const char *str, int namelen) * * Load acquire is needed to make sure that we see that terminating NUL. */ -static int prepend_name(char **buffer, int *buflen, const struct qstr *name) +static bool prepend_name(char **buffer, int *buflen, const struct qstr *name) { const char *dname = smp_load_acquire(&name->name); /* ^^^ */ u32 dlen = READ_ONCE(name->len); char *p; *buflen -= dlen + 1; - if (*buflen < 0) - return -ENAMETOOLONG; + if (unlikely(*buflen < 0)) + return false; p = *buffer -= dlen + 1; *p++ = '/'; while (dlen--) { @@ -51,7 +51,7 @@ static int prepend_name(char **buffer, int *buflen, const struct qstr *name) break; *p++ = c; } - return 0; + return true; } /** @@ -127,7 +127,7 @@ static int prepend_path(const struct path *path, } parent = dentry->d_parent; prefetch(parent); - if (unlikely(prepend_name(&bptr, &blen, &dentry->d_name) < 0)) + if (!prepend_name(&bptr, &blen, &dentry->d_name)) break; dentry = parent; @@ -305,7 +305,7 @@ static char *__dentry_path(const struct dentry *d, char *p, int buflen) const struct dentry *parent = dentry->d_parent; prefetch(parent); - if (unlikely(prepend_name(&end, &len, &dentry->d_name) < 0)) + if (!prepend_name(&end, &len, &dentry->d_name)) break; dentry = parent; -- 2.11.0