Taking away get_module_symbol() and providing a replacement which has link
order problems wasn't really very sensible.
You've changed a lookup in a static table built at compile time to a lookup
in a dynamic table which has to be built in the right order at runtime.
It's too late to do the sensible thing and deprecate the old version rather
than having a 'flag day'. But can we at least fix the link order crap?
struct static_inter_module_entry {
const char *im_name;
const void *userdata;
};
#define inter_module_register_static(x,y) \
static struct static_inter_module_entry __ime_##x \
__attribute__((unused,__section__(".intermodule")) \
= { #x, y };
.. and the obvious for looking in that table in inter_module_get().
-- dwmw2
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/