[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZCIVx2UNN8VAWYAH@infradead.org>
Date: Mon, 27 Mar 2023 15:16:39 -0700
From: Christoph Hellwig <hch@...radead.org>
To: Luis Chamberlain <mcgrof@...nel.org>
Cc: axboe@...nel.dk, sth@...ux.ibm.com, hoeppner@...ux.ibm.com,
hca@...ux.ibm.com, gor@...ux.ibm.com, agordeev@...ux.ibm.com,
borntraeger@...ux.ibm.com, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] block: annotate bdev_disk_changed() deprecation with a
symbol namespace
On Mon, Mar 27, 2023 at 11:44:10AM -0700, Luis Chamberlain wrote:
> Instead of relying on fragile documentation which can easily let us
> slip, use a symbol namespace to annotate which symbols should not be
> used by others.
>
> This ensures no other users pop up by mistake easily and provides
> us a with an easy vehicle to do the same with other routines should
> we need it later.
I don't think deprecated really cuts it. For these two drivers we
can't really get rid of the calls as it is part of their ABI.
What I'd really want is something like an
EXPORT_SYMBOL_FOR(bdev_disk_changed, loop, CONFIG_BLK_DEV_LOOP);
EXPORT_SYMBOL_FOR(bdev_disk_changed, dasd_kmod, CONFIG_DASD);
Which ensures that the symbol lookup only succeeds for loop.ko and
dasd_kmod.ko, and that the export only happens if the relevant
symbols are set.
Powered by blists - more mailing lists