Lines Matching defs:module

1 /* Postprocess module symbol versions
6 * Based in part on module-init-tools/depmod.c,file2alias
32 /* If we are modposting external module set to 1 */
58 /* In kernel, this size is defined in linux/module.h;
172 static struct module *find_module(const char *modname)
174 struct module *mod;
183 static struct module *new_module(const char *name, size_t namelen)
185 struct module *mod;
218 struct list_head list; /* link to module::exported_symbols or module::unresolved_symbols */
219 struct module *module;
247 * the list of unresolved symbols per module
269 static void sym_add_unresolved(const char *name, struct module *mod, bool weak)
279 static struct symbol *sym_find_with_module(const char *name, struct module *mod)
288 if (strcmp(s->name, name) == 0 && (!mod || s->module == mod))
370 static struct symbol *sym_add_exported(const char *name, struct module *mod,
375 if (s && (!external_module || s->module->is_vmlinux || s->module == mod)) {
377 mod->name, name, s->module->name,
378 s->module->is_vmlinux ? "" : ".ko");
382 s->module = mod;
622 static void handle_symbol(struct module *mod, struct elf_info *info,
943 * If a module parameter is declared __initdata and permissions=0
1181 static void check_export_symbol(struct module *mod, struct elf_info *elf,
1251 static void check_section_mismatch(struct module *mod, struct elf_info *elf,
1477 static void section_rela(struct module *mod, struct elf_info *elf,
1519 static void section_rel(struct module *mod, struct elf_info *elf,
1564 * A module includes a number of sections that are discarded
1567 * marked __initdata will be discarded when the module has been initialized.
1570 * only when a module is unloaded which never happens for built-in modules.
1575 static void check_sec_ref(struct module *mod, struct elf_info *elf)
1607 static void extract_crcs_for_object(const char *object, struct module *mod)
1673 * Parse them to retrieve CRCs for the current module.
1675 static void mod_set_crcs(struct module *mod)
1684 /* objects for a module are listed in the *.mod file. */
1707 struct module *mod;
1764 * Our trick to get versioning for module struct etc. - it's
1822 static void check_exports(struct module *mod)
1836 if (exp->module == mod) {
1843 s->module = exp->module;
1855 "module %s uses symbol %s from namespace %s, but does not import it.\n",
1861 error("GPL-incompatible module %s.ko uses GPL-only symbol '%s'\n",
1883 static void check_modname_len(struct module *mod)
1893 error("module name is too long [%s.ko]\n", mod->name);
1899 static void add_header(struct buffer *b, struct module *mod)
1901 buf_printf(b, "#include <linux/module.h>\n");
1903 * Include build-salt.h after module.h in order to
1924 buf_printf(b, "__visible struct module __this_module\n");
1952 static void add_exported_symbols(struct buffer *buf, struct module *mod)
1990 static void add_versions(struct buffer *b, struct module *mod)
2002 if (!s->module)
2021 static void add_depends(struct buffer *b, struct module *mod)
2028 if (s->module)
2029 s->module->seen = s->module->is_vmlinux;
2036 if (!s->module)
2039 if (s->module->seen)
2042 s->module->seen = true;
2043 p = strrchr(s->module->name, '/');
2047 p = s->module->name;
2054 static void add_srcversion(struct buffer *b, struct module *mod)
2120 static void write_vmlinux_export_c_file(struct module *mod)
2133 static void write_mod_c_file(struct module *mod)
2159 * 0x12345678<tab>symbol<tab>module<tab>export<tab>namespace
2175 struct module *mod;
2223 struct module *mod;
2245 struct module *mod;
2273 struct module *mod;