Messages in this thread | | | Date | Thu, 24 Oct 2019 10:35:46 +0100 | From | Matthias Maennich <> | Subject | Re: [PATCH v2 0/4] export/modpost: avoid renaming __ksymtab entries for symbol namespaces |
| |
On Wed, Oct 23, 2019 at 12:22:22PM +0000, Luis Chamberlain wrote: >On Fri, Oct 18, 2019 at 10:31:39AM +0100, Matthias Maennich wrote: >> The introduction of the symbol namespace patches changed the way symbols are >> named in the ksymtab entries. That caused userland tools to fail (such as >> kmod's depmod). As depmod is used as part of the kernel build it was worth >> having another look whether this name change can be avoided. > >Why have this as a default feature? What about having an option to >disable this feature? The benefit being that without a full swing of >tests to avoid regressions its not clear what other issues may creep >up. With this as optional, those wanting the mechanism can enable it >and happilly find the issues for those more conservative.
The strongest argument against that is, that the 'conservative' people would constantly break things for the more 'adventurous' ones. They would introduce namespace requirements by just using symbols without correctly adjusting the imports.
Second, vmlinux and modules would have to be compiled in the same configuration. Otherwise they are incompatible and we would likely have to maintain code in the module loader to catch issues caused by that. In general, I think for the adoption of this feature and one of its purposes - making unexpected use of symbols across the tree visible already at review time - we should not make this an optional one. Enforcing the imports at module load time is optional (there is an option).
And finally, having that code configurable for both options introduces quite some complexity in kernel/module.c, modpost and include/linux/export.h that would make the code hard to maintain and complex to test. Hence that would likely introduce more issues.
I know the feature came with some rough edges. Sorry about that. I think, we got most of them worked out pretty well (big thanks to Masahiro and Jessica and others helping with that). Now the actual change to the surface exposed to userland tools is much smaller and the feature itself less intrusive.
Cheers, Matthias
> > Luis
| |