Received: by 2002:a05:6a10:413:0:0:0:0 with SMTP id 19csp3392278pxp; Tue, 22 Mar 2022 19:27:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJweva5TuRE2C6pj7c9JyC3/nFQ1GDRghl1/uuXds5GWtq+j41xJQrYq7cDe1j9XSZIb4/Y8 X-Received: by 2002:a63:5d62:0:b0:381:eef5:c9d6 with SMTP id o34-20020a635d62000000b00381eef5c9d6mr24176919pgm.412.1648002470363; Tue, 22 Mar 2022 19:27:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648002470; cv=none; d=google.com; s=arc-20160816; b=bEIDQnshHynKbugUt086w8HYBmFAMq2314vUZGyC9IoORmgc3BI8okAyiRP23qrQHO yelPdBGmAD1cQwT7mUTVfQm7SiF0sU7AgVID9cvx/KxpSlUU8HS2RYDf2uiWQ54TuDXy dE2S3eDofDJlAhsSxpfJhwuJ+LbDEKXrCH0goCzsXXaErXsTTAZgSamurUQwNTG73zck ehjnA9iTZiTUXQJ3DO9PJIWM3fTKcTgqHKtISGZAdeC0fqkNgCDS+Srh2qEbLpYOGWP8 7KLu30XPD4XqFZytzQFJk514BEE8X+5rMStlB1uIdfUIoLC8NUSHIZjR8HZQtDZv3mFp JqzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=BcEU4fMbPdz6oE05Wzj5X5qLb1I+8QthKcmGqrNciKY=; b=fzUQ7bXuRSteRU16sjFt9zmCUa7iAreejJOAeylHLRRijc+DsKUZhUfYgSd8Lk99It yrKagoyQ4g6qstPGOGJZ70k79uziTMd1UF/ySrM5emomEL7kdrovuEtRJ/B1G+/PaC4V H4WNbk/mtKD16PvDJEJPX8PQSO8kaw6dT4ueST8VSiuU9Un71LE6+RySAXWgj58x/VHL E7KUFagF2Zi+N1mn/VO0SleP1CvdCPItD2EpI28EhiigmBPuWwkYusHlkZT96RM0R+kg hw7URICfEnbiBOyoluOrbn99F803iDJUsJOtwl3Y4ujASNvpXU5ULdo2Y+YmRbjvPYG9 0FsQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=GGgcsyxF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id pi15-20020a17090b1e4f00b001c6a89d2355si3757836pjb.157.2022.03.22.19.27.37; Tue, 22 Mar 2022 19:27:50 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=GGgcsyxF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236570AbiCVOPO (ORCPT + 99 others); Tue, 22 Mar 2022 10:15:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51458 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236507AbiCVOPB (ORCPT ); Tue, 22 Mar 2022 10:15:01 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9B1447E084; Tue, 22 Mar 2022 07:13:22 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 57B8DB81D07; Tue, 22 Mar 2022 14:13:21 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3E76AC340EE; Tue, 22 Mar 2022 14:13:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1647958400; bh=AaxOnL8mdAdq+KdGal4+3WiKd1Y2UhA87mL/WJTtmAY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GGgcsyxFKWsfinbcBaUgit/ZuxamZeBfZq7MQka2Yo5DzyF3uQSHtzAR6QCWg0Z2F rla79syQ/T7Z9DjuJBwZ8NUCrFM7+P2dLvY3eFiX1G/A4B1N4Hf9/QYohHS41n2uwh QbexeUb6Yks+sU4BIqm+RsRZxg6R/llojGfAryGkXfgoDLJ/8V4UcjWNz1+cuYjkWK 9i2eaffC4DsimxyecPJXvDLaPnM1H+k9FT8nsEtddlliQ/VM/5F6wv++X2wvyhac0W r32mfX1SjZVrH18cDF2/JD42FOPwLH9dmBReIO/xGx/TFgSYhg+vcDNTxQCL/chfO8 CtBazQqNxhCuA== From: Jeff Layton To: idryomov@gmail.com, xiubli@redhat.com Cc: ceph-devel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-fscrypt@vger.kernel.org, linux-kernel@vger.kernel.org, lhenriques@suse.de, Al Viro Subject: [RFC PATCH v11 01/51] vfs: export new_inode_pseudo Date: Tue, 22 Mar 2022 10:12:26 -0400 Message-Id: <20220322141316.41325-2-jlayton@kernel.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220322141316.41325-1-jlayton@kernel.org> References: <20220322141316.41325-1-jlayton@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.9 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ceph needs to be able to allocate inodes ahead of a create that might involve a fscrypt-encrypted inode. new_inode() almost fits the bill, but it puts the inode on the sb->s_inodes list and when we go to hash it, that might be done again. We could work around that by setting I_CREATING on the new inode, but that causes ilookup5 to return -ESTALE if something tries to find it before I_NEW is cleared. This is desirable behavior for most filesystems, but doesn't work for ceph. To work around all of this, just use new_inode_pseudo which doesn't add it to the sb->s_inodes list. Cc: Al Viro Signed-off-by: Jeff Layton --- fs/inode.c | 1 + 1 file changed, 1 insertion(+) Al, can I get your Acked-by on this if you're OK with it? Alternately if you just want to take it in via your tree, then that would be fine too. diff --git a/fs/inode.c b/fs/inode.c index 63324df6fa27..9ddf7d1a7359 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -1025,6 +1025,7 @@ struct inode *new_inode_pseudo(struct super_block *sb) } return inode; } +EXPORT_SYMBOL(new_inode_pseudo); /** * new_inode - obtain an inode -- 2.35.1