Loading arch/cris/kernel/module.c +11 −3 Original line number Diff line number Diff line Loading @@ -28,18 +28,26 @@ #define DEBUGP(fmt , ...) #endif #ifdef CONFIG_ETRAX_KMALLOCED_MODULES #define MALLOC_MODULE(size) kmalloc(size, GFP_KERNEL) #define FREE_MODULE(region) kfree(region) #else #define MALLOC_MODULE(size) vmalloc_exec(size) #define FREE_MODULE(region) vfree(region) #endif void *module_alloc(unsigned long size) { if (size == 0) return NULL; return vmalloc_exec(size); return MALLOC_MODULE(size); } /* Free memory returned from module_alloc */ void module_free(struct module *mod, void *module_region) { vfree(module_region); FREE_MODULE(module_region); /* FIXME: If module_region == mod->init_region, trim exception table entries. */ } Loading Loading
arch/cris/kernel/module.c +11 −3 Original line number Diff line number Diff line Loading @@ -28,18 +28,26 @@ #define DEBUGP(fmt , ...) #endif #ifdef CONFIG_ETRAX_KMALLOCED_MODULES #define MALLOC_MODULE(size) kmalloc(size, GFP_KERNEL) #define FREE_MODULE(region) kfree(region) #else #define MALLOC_MODULE(size) vmalloc_exec(size) #define FREE_MODULE(region) vfree(region) #endif void *module_alloc(unsigned long size) { if (size == 0) return NULL; return vmalloc_exec(size); return MALLOC_MODULE(size); } /* Free memory returned from module_alloc */ void module_free(struct module *mod, void *module_region) { vfree(module_region); FREE_MODULE(module_region); /* FIXME: If module_region == mod->init_region, trim exception table entries. */ } Loading