[OpenWrt-Devel] [PATCH] Allow kernel modules to keep build ID debug symbol.

Felix Fietkau nbd at openwrt.org
Fri Oct 30 09:54:33 EDT 2015

On 2015-10-30 14:37, Toke Høiland-Jørgensen wrote:
> Felix Fietkau <nbd at openwrt.org> writes:
>> I'm still not convinced that this is very useful - if you have issues
>> that you sometimes reinstall modules, but don't reload them and have
>> to check the id, why not just fix your workflow instead?
> I did script it, but I'm trying to have a way to make this available to
> others as well. Let me give a bit more context:
> I'm using this for the 'cake' shaper module, which is built out-of-tree
> as kmod-sched-cake, available in the ceropackages feed. Other people are
> testing this, with their own builds; and I want to be able to keep track
> of which versions they are testing with, without having to impose a
> specific workflow for them: With this change, I can just add the
> build-id linker option in the package Makefile, and it will be available
> on the router running the code, where it can be automatically extracted
> by the Flent tool as part of the test.
As far as I know, the build-id is build host specific, so I don't think
it will really help you with tracking versions of other people's builds.

>> Either way, if this is really necessary for you, I'm okay with adding
>> support for keeping the build-id, but setting this in the package
>> makefile (especially in the Build/Exports section) seems rather quirky
>> to me. Since this is a rather exotic debugging-only feature, why not
>> just add a global config option for it?
> Well I was trying to find a way to make it possible to set this for one
> module (package) only, in order to keep the impact as low as possible.
> And this was the only I could figure out to make it work (since the
> RSTRIP variable in rules.mk seems to be expanded before the contents of
> the package Makefile, so I can't add a variable there).
> But since this requires a specific kernel configuration anyway
> (CONFIG_KALLSYMS), global config changes are needed anyway, so am fine
> with making it a global switch. Can resubmit is as such.
> Should I just add a new switch under "Global build settings"? Or would
> it be okay to condition it on CONFIG_KERNEL_KALLSYMS (which it needs to
> work anyway)?
> Incidentally, is there a way to depend on these options from the package
> Makefile?
I think for what you're trying to do, it might be better to use
something else. You could just embed a custom section in your module
containing a git hash of the source tree, or something like that.

- Felix
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list