On Sat, 2006-02-18 at 00:38 +0100, Sam Ravnborg wrote:
> Hi Adrian
>
> > > I did not find a way to look up the offending symbol but maybe some elf
> > > expert can help?
> > >...
> >
> > I'm not an ELF expert, but simply checking all __init functions in this
> > files finds that this seems to be the following:
> >
> > <-- snip -->
> >
> > ...
> > static struct acpi_driver asus_hotk_driver = {
> > .name = ACPI_HOTK_NAME,
> > .class = ACPI_HOTK_CLASS,
> > .ids = ACPI_HOTK_HID,
> > .ops = {
> > .add = asus_hotk_add,
> > .remove = asus_hotk_remove,
> > },
> > };
> > ...
> > static int __init asus_hotk_add(struct acpi_device *device)
> > ...
> >
> Correct.
> What I wanted was modpost to tell that the symbol being referenced in
> the .data section was 'asus_hotk_add' and not just an offset after
> asus_hotk_driver.
>
> What is needed is a link from the RELOCATION RECORD to the symbol table.
The r_info field of Elf{32,64}_Rel{,a} contains an index into the symbol
table which can be extracted using the ELF{32,64}_R_SYM() macro.
--
Nicholas Miell <[email protected]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]