Re: [PATCH 07/14] mce3: pass mce info to EDAC for decoding

From: H. Peter Anvin
Date: Mon Jul 20 2009 - 16:19:45 EST


Andi Kleen wrote:
>> The goal is to have a default handler within the kernel and a more specific handler in a module after it has loaded. Using the weak symbol as a mechanism to do that. I haven't used that, so I don't know if it works.
>
> weak symbols don't work over kernel modules.
>

For modules, you typically have to have a callback to update an internal
function pointer. If you think about it, it's pretty obvious -- a weak
symbol changes the behavior at link time, but it's still a static call.
If you want modules to change the behavior, you're talking about a
*dynamic* change -- the call will point to different things at different
points in time -- so you need another mechanism, i.e. function pointers.

-hpa

--
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/