X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Flinux%2Fmodule.h;h=84d75f3a8acab027fc1ed4a91c8878808eeb6be2;hb=987b0145d94eecf292d8b301228356f44611ab7c;hp=b9b98bb228afb0ab7abd4cbac8516e8c89ceac62;hpb=f7ed79d23a47594e7834d66a8f14449796d4f3e6;p=linux-2.6.git diff --git a/include/linux/module.h b/include/linux/module.h index b9b98bb22..84d75f3a8 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -183,7 +183,6 @@ void *__symbol_get_gpl(const char *symbol); /* For every exported symbol, place a struct in the __ksymtab section */ #define __EXPORT_SYMBOL(sym, sec) \ - extern typeof(sym) sym; \ __CRC_SYMBOL(sym, sec) \ static const char __kstrtab_##sym[] \ __attribute__((section("__ksymtab_strings"))) \ @@ -199,9 +198,6 @@ void *__symbol_get_gpl(const char *symbol); #define EXPORT_SYMBOL_GPL(sym) \ __EXPORT_SYMBOL(sym, "_gpl") -#define EXPORT_SYMBOL_GPL_FUTURE(sym) \ - __EXPORT_SYMBOL(sym, "_gpl_future") - #endif struct module_ref @@ -246,7 +242,6 @@ struct module /* Sysfs stuff. */ struct module_kobject mkobj; struct module_param_attrs *param_attrs; - struct module_attribute *modinfo_attrs; const char *version; const char *srcversion; @@ -260,11 +255,6 @@ struct module unsigned int num_gpl_syms; const unsigned long *gpl_crcs; - /* symbols that will be GPL-only in the near future. */ - const struct kernel_symbol *gpl_future_syms; - unsigned int num_gpl_future_syms; - const unsigned long *gpl_future_crcs; - /* Exception table */ unsigned int num_exentries; const struct exception_table_entry *extable; @@ -292,9 +282,6 @@ struct module /* Am I GPL-compatible */ int license_gplok; - - /* Am I gpg signed */ - int gpgsig_ok; #ifdef CONFIG_MODULE_UNLOAD /* Reference counts */ @@ -454,7 +441,6 @@ void module_remove_driver(struct device_driver *); #else /* !CONFIG_MODULES... */ #define EXPORT_SYMBOL(sym) #define EXPORT_SYMBOL_GPL(sym) -#define EXPORT_SYMBOL_GPL_FUTURE(sym) /* Given an address, look for it in the exception tables. */ static inline const struct exception_table_entry * @@ -558,6 +544,25 @@ static inline void module_remove_driver(struct device_driver *driver) /* BELOW HERE ALL THESE ARE OBSOLETE AND WILL VANISH */ +struct obsolete_modparm { + char name[64]; + char type[64-sizeof(void *)]; + void *addr; +}; + +static inline void MODULE_PARM_(void) { } +#ifdef MODULE +/* DEPRECATED: Do not use. */ +#define MODULE_PARM(var,type) \ +extern struct obsolete_modparm __parm_##var \ +__attribute__((section("__obsparm"))); \ +struct obsolete_modparm __parm_##var = \ +{ __stringify(var), type, &MODULE_PARM_ }; \ +__MODULE_PARM_TYPE(var, type); +#else +#define MODULE_PARM(var,type) static void __attribute__((__unused__)) *__parm_##var = &MODULE_PARM_; +#endif + #define __MODULE_STRING(x) __stringify(x) /* Use symbol_get and symbol_put instead. You'll thank me. */