2002-11-20 07:21:17

by Rusty Russell

[permalink] [raw]
Subject: [PATCH] module device table restoration

Patch from Adam Richter. I have a nicer solution based on aliases,
but it requires coordination with USB, PCI and PCMCIA maintainers,
which is taking time.

This restores the old code in the meantime: one week without this is
too long or people who need it. 8(

Please apply unless Adam has objections,
Rusty.

--- linux-2.5.48/include/linux/module.h 2002-11-17 20:29:52.000000000 -0800
+++ linux/include/linux/module.h 2002-11-18 08:05:19.000000000 -0800
@@ -26,8 +26,6 @@
#define MODULE_AUTHOR(name)
#define MODULE_DESCRIPTION(desc)
#define MODULE_SUPPORTED_DEVICE(name)
-#define MODULE_GENERIC_TABLE(gtype,name)
-#define MODULE_DEVICE_TABLE(type,name)
#define MODULE_PARM_DESC(var,desc)
#define print_symbol(format, addr)
#define print_modules()
@@ -40,14 +38,28 @@
};

#ifdef MODULE
+
+#define MODULE_GENERIC_TABLE(gtype,name) \
+static const unsigned long __module_##gtype##_size \
+ __attribute__ ((unused)) = sizeof(struct gtype##_id); \
+static const struct gtype##_id * __module_##gtype##_table \
+ __attribute__ ((unused)) = name
+
/* This is magically filled in by the linker, but THIS_MODULE must be
a constant so it works in initializers. */
extern struct module __this_module;
#define THIS_MODULE (&__this_module)
-#else
+
+#else /* !MODULE */
+
+#define MODULE_GENERIC_TABLE(gtype,name)
#define THIS_MODULE ((struct module *)0)
+
#endif

+#define MODULE_DEVICE_TABLE(type,name) \
+ MODULE_GENERIC_TABLE(type##_device,name)
+
#ifdef CONFIG_MODULES
/* Get/put a kernel symbol (calls must be symmetric) */
void *__symbol_get(const char *symbol);


2002-11-20 08:09:06

by Greg KH

[permalink] [raw]
Subject: Re: [PATCH] module device table restoration

On Wed, Nov 20, 2002 at 06:00:19PM +1100, Rusty Russell wrote:
> Patch from Adam Richter. I have a nicer solution based on aliases,
> but it requires coordination with USB, PCI and PCMCIA maintainers,
> which is taking time.

Oops, was I supposed to be doing something? :)

I liked your patch that did the aliases, but had a few questions about
it. I guess I need to go dig up that email, sorry.

greg k-h

2002-11-20 11:25:30

by Adam J. Richter

[permalink] [raw]
Subject: Re: [PATCH] module device table restoration

Rusty Russell writes:
>Please apply unless Adam has objections,
>Rusty.

No objections. Thanks!

Adam J. Richter __ ______________ 575 Oroville Road
[email protected] \ / Milpitas, California 95035
+1 408 309-6081 | g g d r a s i l United States of America
"Free Software For The Rest Of Us."