[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <SJ1PR11MB60838EEB95C84734E7F3C5EEFCF22@SJ1PR11MB6083.namprd11.prod.outlook.com>
Date: Wed, 29 May 2024 18:27:18 +0000
From: "Luck, Tony" <tony.luck@...el.com>
To: Arnd Bergmann <arnd@...db.de>, Arnd Bergmann <arnd@...nel.org>, "Borislav
Petkov" <bp@...en8.de>, "Zhuo, Qiuxu" <qiuxu.zhuo@...el.com>
CC: James Morse <james.morse@....com>, Mauro Carvalho Chehab
<mchehab@...nel.org>, Robert Richter <rric@...nel.org>, Marvin Lin
<milkfafa@...il.com>, Shubhrajyoti Datta <shubhrajyoti.datta@....com>, "Sai
Krishna Potthuri" <sai.krishna.potthuri@....com>,
"linux-edac@...r.kernel.org" <linux-edac@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] EDAC, i10nm: make skx_common.o a separate module
> One of the problems here is that each compilation unit implicitly
> knows the name of the module it gets linked into, via the
> KBUILD_MODNAME macro. If it gets linked twice, the macro is
> wrong for at least one of the two, and this can lead to
> incorrect printk formats and other macro expansions using
> that as an identifier.
Hardly any edac drivers use KBUILD_MODNAME. These two don't.
> A particularly bad case happens when one of the two is
> built-in while the other one is a loadable module. In
> this case, the module infrastructure assumes it's always
> built-in, which can mess up e.g. __exit annotations and
> THIS_MODULE references.
But that does seem like a real problem.
I took your patch for a spin on a system that uses the i10nm_edac
module. Works ok both when built as a module (the skx_edac_common
module was autoloaded) and as a built-in.
If Boris has no other thoughts about this I will apply your patch.
-Tony
Powered by blists - more mailing lists