diff options
| author | Patrick Mochel <mochel@osdl.org> | 2002-11-20 00:15:08 -0600 |
|---|---|---|
| committer | Patrick Mochel <mochel@osdl.org> | 2002-11-20 00:15:08 -0600 |
| commit | 95ca3c33e70332572251de4eb60eb0c628cc5aa2 (patch) | |
| tree | ce3a52dcc0423f9a3b6bf3e7ba042fc53143d36a /include/linux/module.h | |
| parent | 3c31f49e8830d17e3cff6a727b0e4c8821078766 (diff) | |
| parent | 37256d28aacf841a25c62910abf586bd271e9632 (diff) | |
Merge osdl.org:/home/mochel/src/kernel/devel/linux-2.5-virgin
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-kobject
Diffstat (limited to 'include/linux/module.h')
| -rw-r--r-- | include/linux/module.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/include/linux/module.h b/include/linux/module.h index 47ff2bc63e33..927341a26c0e 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -28,8 +28,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_modules() @@ -41,14 +39,28 @@ struct kernel_symbol }; #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) + struct kernel_symbol_group { /* Links us into the global symbol list */ |
