Re: [usb-storage] Re: [PATCH v4 12/12] RFC: watchdog: export core symbols in WATCHDOG_CORE namespace
From: Masahiro Yamada <hidden>
Date: 2019-09-05 11:26:17
Also in:
linux-kbuild, linux-usb, linux-watchdog, lkml
On Thu, Sep 5, 2019 at 8:16 PM Jessica Yu [off-list ref] wrote:
quoted hunk ↗ jump to hunk
+++ Arnd Bergmann [05/09/19 12:52 +0200]:quoted
On Thu, Sep 5, 2019 at 12:41 PM Jessica Yu [off-list ref] wrote:quoted
+++ Matthew Dharm [04/09/19 09:16 -0700]:quoted
On Wed, Sep 4, 2019 at 5:12 AM Guenter Roeck [off-list ref] wrote:quoted
quoted
HOWEVER, I have one question: If these patches are included, and someone wants to introduce a bit of code which needs to use two symbols from different namespaces but with the same name, can that be done? That is, if driver A has symbol 'foo' and driver B has symbol 'foo' (both in their respective namespaces), and driver C wants to use A.foo and B.foo, can that be supported?As of now, we currently don't support this - modpost will warn if a symbol is exported more than once (across modules + vmlinux), and the module loader currently assumes exported symbol names are unique. Do you have a concrete use case? If there is a strong need for this, I don't think it'd be too hard to implement.I think what would prevent this from working in general is that having two modules with the same exported symbol in different namespaces won't link if you try to build both modules into the kernel itself. ArndAh yeah, you are right. I only tried building an identically named exported symbol in a module and in the kernel, and there I got away with a modpost warning. But this breaks when building the module into the kernel, so I guess this is out of the question. Thanks, Jessica
The cover letter starts with "As of Linux 5.3-rc7, there are 31207 [1] exported symbols in the kernel". Whether or not we apply this patch set, we will have to carefully maintain them so that 31207 symbols are unique, anyway. (And, we can do this with allmodconfig + modpost) So, what is the point of the namespace, where it does not loosen the scope of uniqueness? -- Best Regards Masahiro Yamada