Re: Where did vm_operations_struct->unmap in 2.4.0 go?

David Woodhouse (dwmw2@infradead.org)
Thu, 11 Jan 2001 11:42:24 +0000


kaos@ocs.com.au said:
> And what a pile of crud those patches are!! Instead of using the
> clean replacement interface for get_module_symbol, nvidia/
> patch-2.4.0-PR hard codes the old get_module_symbol algorithm as
> inline code.

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/