From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A7E04C282DD for ; Tue, 7 Jan 2020 21:27:28 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6DCCB206F0 for ; Tue, 7 Jan 2020 21:27:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1578432448; bh=/c4Zv3LUahUixv4fM0DPOnMkHwrKF/jP/VtElEH70mk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=FBzoM3rXsLndXPNSNA82HF0rqY4CCfpfq4T7FSv5dwHx3GUbvnn1PZIzlabBePJWu Ibmxjd1s8HtzvqLJ3mnNhCWmQxbjU8L/9/rTieyLE2qOsWnjtO3zdVq9QY83MSGXvX QUYk9kdKf2Ai0TwbhCBGZDODSbW6Q2pbsKUZZ9eg= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727678AbgAGU5o (ORCPT ); Tue, 7 Jan 2020 15:57:44 -0500 Received: from mail.kernel.org ([198.145.29.99]:55248 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727653AbgAGU5k (ORCPT ); Tue, 7 Jan 2020 15:57:40 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 52B062081E; Tue, 7 Jan 2020 20:57:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1578430659; bh=/c4Zv3LUahUixv4fM0DPOnMkHwrKF/jP/VtElEH70mk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=wRO9GY7q/Xq2hQ/2pUmpbVt4siRzTFi2PtvyLY0B3558iXY/5rw4a08imY5TAZkf2 d4Hz+EUmUdaf5hZO+TGRYKgIc2cLSRZxKzCqKBSo8jf5ISMAq/SDbkjyA8ITfgjXqQ Q9dxPeCpVRe6NIRp2Y9oKiwbvvy4hOJ/qsQe9oyk= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, David Howells , Marc Dionne , Jonathan Billings , Sasha Levin Subject: [PATCH 5.4 042/191] afs: Fix creation calls in the dynamic root to fail with EOPNOTSUPP Date: Tue, 7 Jan 2020 21:52:42 +0100 Message-Id: <20200107205335.245874356@linuxfoundation.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200107205332.984228665@linuxfoundation.org> References: <20200107205332.984228665@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: David Howells [ Upstream commit 1da4bd9f9d187f53618890d7b66b9628bbec3c70 ] Fix the lookup method on the dynamic root directory such that creation calls, such as mkdir, open(O_CREAT), symlink, etc. fail with EOPNOTSUPP rather than failing with some odd error (such as EEXIST). lookup() itself tries to create automount directories when it is invoked. These are cached locally in RAM and not committed to storage. Signed-off-by: David Howells Reviewed-by: Marc Dionne Tested-by: Jonathan Billings Signed-off-by: Sasha Levin --- fs/afs/dynroot.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fs/afs/dynroot.c b/fs/afs/dynroot.c index 4150280509ff..7503899c0a1b 100644 --- a/fs/afs/dynroot.c +++ b/fs/afs/dynroot.c @@ -136,6 +136,9 @@ static struct dentry *afs_dynroot_lookup(struct inode *dir, struct dentry *dentr ASSERTCMP(d_inode(dentry), ==, NULL); + if (flags & LOOKUP_CREATE) + return ERR_PTR(-EOPNOTSUPP); + if (dentry->d_name.len >= AFSNAMEMAX) { _leave(" = -ENAMETOOLONG"); return ERR_PTR(-ENAMETOOLONG); -- 2.20.1