Re: [crash] af9005_usb_module_init(): BUG: unable to handle kernelpaging request at ff100000
From: Luca Olivetti
Date: Wed Feb 04 2009 - 10:49:59 EST
En/na Daniel Walker ha escrit:
Doesn't symbol_request return a NULL in such a case?
At the time I didn't try the above configuration
(CONFIG_DVB_USB_AF9005_REMOTE=n), but removed the compiled
dvb-usb-af9005-remote.ko, and all was well (i.e. the symbol_request
returned NULL and the remote handling was disabled).
I'm not sure what symbol request returns when CONFIG_MODULES=n .. Since
it basically drops symbol_request() into a macro ,
Take the following with a grain of salt, since I'm not well versed in C
(and I'm not interested) but it seems that the macro, if
CONFIG_MODULES=n, transforms it into a weak symbol reference
and you have externs
for all these functions
No, I havent: the source file isn't compiled, so those symbols are
unavailable to the linker.
The only reference I could find (well, I haven't searched that much) on
the expected behaviour of the linker when a weak attribute is not found
is this:
http://software.intel.com/en-us/articles/software-convention-models-using-elf-visibility-attributes/
"# STB_WEAK. A weak symbol behaves as does a global symbol, with a few
differences. If there are both a weak and a global definition of a name,
the global definition takes precedence and any weak definitions are
ignored. The Linker will not extract archive members to resolve
undefined weak symbols. It is not an error to have unresolved weak
references; unresolved weak symbols have the value zero. "
So it should work without your patch.
Bye
--
Luca
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/