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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id BBB10E674AA for ; Fri, 1 Nov 2024 07:19:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4F83F6B0088; Fri, 1 Nov 2024 03:19:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 45A756B0089; Fri, 1 Nov 2024 03:19:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2D34A6B008A; Fri, 1 Nov 2024 03:19:48 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 0BA6E6B0088 for ; Fri, 1 Nov 2024 03:19:48 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 6EC9C1A1A95 for ; Fri, 1 Nov 2024 07:19:47 +0000 (UTC) X-FDA: 82736675532.10.AD79E9E Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf08.hostedemail.com (Postfix) with ESMTP id 34275160008 for ; Fri, 1 Nov 2024 07:19:27 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PP3xJYs1; spf=pass (imf08.hostedemail.com: domain of nathan@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=nathan@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1730445540; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=nHBGaBgAbzf3YKb5ucTdmnE/Jjk1gOSh2oBUSGP8aM4=; b=vcsu3ZzLBy6q+ng/5eRKpuWyo9rD+CzL4VAylE/T4bl19hfTCeXqHuLQn39cyVJb6xQLm9 0Zpu9TE7Mw1fxgwUdw5bh40l1SiG9Eux/dQNKinbINNiDeS0td77Ks0VimfqbA8DniwzvA YFS2Pc5sM0lPCSUX37mjoj0cP+S9t+U= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1730445540; a=rsa-sha256; cv=none; b=IzNOuEhdepRAHxVql6P7j8TVlZiIbduNsMpmndoc133GPql1nMRHs0MCmIpDPQmeNq0myS LGyQE1WshwaciwIz7wtnfSulD3sUHqr9HeUSFdJrK6g+Rb18FGB/t9ZmI/xalnjFameGlz DWajkvljz/V2alL8vs323EZklDMtR7U= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PP3xJYs1; spf=pass (imf08.hostedemail.com: domain of nathan@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=nathan@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 830DBA40431; Fri, 1 Nov 2024 07:17:49 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0B053C4CECD; Fri, 1 Nov 2024 07:19:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1730445584; bh=RnTQ1elkFuyR+PQ466DkLTDfOSe69lYJq3xND9eki5Y=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=PP3xJYs1PWrZBmr3rjwFI0lOjOUunRpxf10OfsTKeiOxbHF3xjuzzGJ+sbpFecEKm ho9Uqluncg+YllXZZzYnQCHMkKFFSC/ufv0lA3BcjV+YUAm8nCiJFLbmcp1W5Lx7jk RqVfxMZSqPrpw95u+KOSDInRX0mweOhXBflPAQr5zX6ZDl28Xwhlo3Yb0iZyacSgBw K9GoTIKlw4VyVkYtPoyxyQyvTVsqryssACDtD/rEJ6ZKWdmJb1AuGEj/VDaHjGOvo1 YqwBp/ggQCMYrDJjg96S7b7oKKlDdIqfiwL6M4XP6Gd4SJ/W9FWimAddUsJGv+V94k SkJ7aJV6FX0FQ== Date: Fri, 1 Nov 2024 00:19:42 -0700 From: Nathan Chancellor To: =?iso-8859-1?Q?Andr=E9?= Almeida Cc: Hugh Dickins , Andrew Morton , Alexander Viro , Christian Brauner , Jan Kara , krisman@kernel.org, Stephen Rothwell , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, kernel-dev@igalia.com, Theodore Ts'o Subject: Re: [PATCH 3/3] tmpfs: Initialize sysfs during tmpfs init Message-ID: <20241101071942.GB2962282@thelio-3990X> References: <20241101013741.295792-1-andrealmeid@igalia.com> <20241101013741.295792-4-andrealmeid@igalia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20241101013741.295792-4-andrealmeid@igalia.com> X-Stat-Signature: fnck1qbhnzf9uuehcfb53mpu41porkoi X-Rspam-User: X-Rspamd-Queue-Id: 34275160008 X-Rspamd-Server: rspam02 X-HE-Tag: 1730445567-896302 X-HE-Meta: U2FsdGVkX1+agTjXJEYwcC+pAy/cKAhIRuLEyPZ69XgqjbWzT2PKm/PHxc+PO/FwVlLJU3SGGQ/y9EOEIgQTuuF1LK99CSgZA3tv9rXUGvSZMxESAYRlCCu+3GmAcA+NH4T60FZQn0oni/uRRzxc+L2K3o5WLxLeey7dgtPuyuVWx1dLChTqfybeeOSjh7/opzHua5N5OyxE4wARg4e3F/XEcEJwQLI1a7ZLtXAr3Ol3VIcrkY0MNaTZOyXOJKHbUvuUYxJdkm1FcX7Yx5bPjDeIZqFMm/LtVLvd5e2IosbQ6bebOmnyINnTY6CaNk9uZHvuNlt0yyVqOAjbjDJynx/ZD8/d9rAWKv1FH7J/geozMTlfXef1UgynePPL+e65qXANsLui6+n77nS/tJz6dtEhUTzlF0H5V2T49Wsgr2LR/8n2PFHKHQ92tm9nt0LpBwl7xstvnhXNM1tpt/YcS+ytV+jI/hq+e1mc2C9V91+y7n/TubBbZorFMpeb24e0THqTuJrN2jwOhzUX2OW8IJxiOXhBO1KC1wAHyrFYSMMt6u1N7boA9UKFrkMp+oqauf2Q3m7uSdFuG+eqZzlB2ruFOYFBdhoMDuJi+UThMp7zY2PnbeJDCh7kVxTgMsNqWpId80MYjC1mGvcWp01Mp53k8nmkEAxT/YC0NPN55It3tcJPXujn+mjHVyBUh7vVmfzJa9p4IiAKwzzrtd3zV5vum9Cvn5kjNRJVysK2xkky3JLpsoqgdtQcpcB07RjmJlVkkCpUB3Pf5j/H+GcJAzBP/dm9ZGRjY/GHueaTDe0U+gLZ/Lem0PNAz9KRAZjNL7+52add9Rwu4+pDyJp7lGZLAb9NS5WliTi5sfevcj2/pN1M7c3oHNnZpKa78XYzsc0aF7TkLo7NzQl5XzwtpHqQ6Phhsoy1mrYM3Wxypn71Bti6YKZsJfUGAeUZwjhZv/aVIfW4AxC9lyjxMUF Z6FzGCSX MXXPRrDDm5TFYaD+OTngybCQfWMC00ZfhiqWoR0VQrHhyZ7hn0juRZ+YMKGQNxtTNmiTivrPKCvy8WXt/4Tw1XYTaWHdV2u9b1J2CMfwErvVtFQlIYeZJOVW++vEO0mteAuQeo1lIdqM61W13PVQz40hyI8VfhksysfqHskmBzY8/di1V80HbHLh6TxRollL7R9v4TjXW6gMGQvTeBDacUE2+TXnyKUncUxb0eCklCH0f3y1WhoiKs49JIWTrn9JQ6s1BlaP708f5++KTSeRoY17Tb/pbBapWbmk40ig6vuB9qVL9Ib1y4Q//aym3PCVzxgCCmJezXgtNVJ3Y1zA2VYENllJC2Msd4jEWdsctQ3Vtr88LxzND9Aimqy1xMkyWDB6G X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hi André, On Thu, Oct 31, 2024 at 10:37:41PM -0300, André Almeida wrote: > Instead of using fs_initcall(), initialize sysfs with the rest of the > filesystem. This is the right way to do it because otherwise any error > during tmpfs_sysfs_init() would get silently ignored. It's also useful > if tmpfs' sysfs ever need to display runtime information. > > Signed-off-by: André Almeida > --- > mm/shmem.c | 130 ++++++++++++++++++++++++++++------------------------- > 1 file changed, 68 insertions(+), 62 deletions(-) > > diff --git a/mm/shmem.c b/mm/shmem.c > index 6038e1d11987..8ff2f619f531 100644 > --- a/mm/shmem.c > +++ b/mm/shmem.c > @@ -5126,6 +5126,66 @@ static struct file_system_type shmem_fs_type = { > .fs_flags = FS_USERNS_MOUNT | FS_ALLOW_IDMAP | FS_MGTIME, > }; > > +#if defined(CONFIG_SYSFS) && defined(CONFIG_TMPFS) This condition... > +static int __init tmpfs_sysfs_init(void) > +{ > + int ret; > + > + tmpfs_kobj = kobject_create_and_add("tmpfs", fs_kobj); > + if (!tmpfs_kobj) > + return -ENOMEM; > + > + ret = sysfs_create_group(tmpfs_kobj, &tmpfs_attribute_group); > + if (ret) > + kobject_put(tmpfs_kobj); > + > + return ret; > +} > +#endif /* CONFIG_SYSFS && CONFIG_TMPFS */ > + > void __init shmem_init(void) > { > int error; > @@ -5149,6 +5209,14 @@ void __init shmem_init(void) > goto out1; > } > > +#ifdef CONFIG_SYSFS and this condition are not the same, so there will be a compile error if CONFIG_SHMEM and CONFIG_SYSFS are enabled but CONFIG_TMPFS is not, such as with ARCH=x86_64 allnoconfig for me: mm/shmem.c: In function 'shmem_init': mm/shmem.c:5243:17: error: implicit declaration of function 'tmpfs_sysfs_init'; did you mean 'uids_sysfs_init'? [-Wimplicit-function-declaration] 5243 | error = tmpfs_sysfs_init(); | ^~~~~~~~~~~~~~~~ | uids_sysfs_init > + error = tmpfs_sysfs_init(); > + if (error) { > + pr_err("Could not init tmpfs sysfs\n"); > + goto out1; > + } > +#endif Cheers, Nathan