[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Zp-_RDk5n5431yyh@infradead.org>
Date: Tue, 23 Jul 2024 07:33:40 -0700
From: Christoph Hellwig <hch@...radead.org>
To: Youling Tang <youling.tang@...ux.dev>
Cc: Arnd Bergmann <arnd@...db.de>, Luis Chamberlain <mcgrof@...nel.org>,
Chris Mason <clm@...com>, Josef Bacik <josef@...icpanda.com>,
David Sterba <dsterba@...e.com>, tytso@....edu,
Andreas Dilger <adilger.kernel@...ger.ca>,
Jaegeuk Kim <jaegeuk@...nel.org>, Chao Yu <chao@...nel.org>,
Christoph Hellwig <hch@...radead.org>, linux-arch@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-modules@...r.kernel.org,
linux-btrfs@...r.kernel.org, linux-ext4@...r.kernel.org,
linux-f2fs-devel@...ts.sourceforge.net,
Youling Tang <tangyouling@...inos.cn>
Subject: Re: [PATCH 1/4] module: Add module_subinit{_noexit} and
module_subeixt helper macros
On Tue, Jul 23, 2024 at 04:32:36PM +0800, Youling Tang wrote:
> Providing module_subinit{_noexit} and module_subeixt helps macros ensure
> that modules init/exit match their order, while also simplifying the code.
>
> The three macros are defined as follows:
> - module_subinit(initfn, exitfn,rollback)
> - module_subinit_noexit(initfn, rollback)
> - module_subexit(rollback)
>
> `initfn` is the initialization function and `exitfn` is the corresponding
> exit function.
I find the interface a little confusing. What I would have expected
is to:
- have the module_subinit call at file scope instead of in the
module_init helper, similar to module_init/module_exit
- thus keep the rollback state explicitly in the module structure or
similar so that the driver itself doesn't need to care about at
all, and thus remove the need for the module_subexit call.
Powered by blists - more mailing lists