Lines Matching +full:build +full:- +full:user +full:- +full:static
10 * the COPYING file in the top-level directory.
12 * Contributions after 2012-01-13 are licensed under the terms of the
23 #include "qemu/config-file.h"
26 #include "qemu-version.h"
39 static ModuleTypeList init_type_list[MODULE_INIT_MAX];
40 static bool modules_init_done[MODULE_INIT_MAX];
42 static ModuleTypeList dso_init_list;
44 static void init_lists(void) in init_lists()
46 static int inited; in init_lists()
63 static ModuleTypeList *find_type(module_init_type type) in find_type()
76 e->init = fn; in register_module_init()
77 e->type = type; in register_module_init()
91 e->init = fn; in register_dso_module_init()
92 e->type = type; in register_dso_module_init()
109 e->init(); in module_call_init()
117 static const QemuModinfo module_info_stub[] = { {
120 static const QemuModinfo *module_info = module_info_stub;
121 static const char *module_arch;
133 static bool module_check_arch(const QemuModinfo *modinfo) in module_check_arch()
135 if (modinfo->arch) { in module_check_arch()
137 /* no arch set -> ignore all */ in module_check_arch()
140 if (strcmp(module_arch, modinfo->arch) != 0) { in module_check_arch()
157 static bool module_load_dso(const char *fname, bool export_symbols, in module_load_dso()
179 * Print some info if this is a QEMU module (but from different build), in module_load_dso()
180 * this will make debugging user problems easier. in module_load_dso()
184 "Only modules from the same build can be loaded.\n"); in module_load_dso()
191 e->init(); in module_load_dso()
192 register_module_init(e->init, e->type); in module_load_dso()
204 int rv = -1; in module_load()
213 static GHashTable *loaded_modules; in module_load()
219 return -1; in module_load()
243 G_CSET_A_2_Z G_CSET_a_2_z G_CSET_DIGITS "+-.~", in module_load()
251 for (modinfo = module_info; modinfo->name != NULL; modinfo++) { in module_load()
252 if (modinfo->arch) { in module_load()
253 if (strcmp(modinfo->name, module_name) == 0) { in module_load()
256 "expected '%s', got '%s'", module_arch, modinfo->arch); in module_load()
261 if (modinfo->deps) { in module_load()
262 if (strcmp(modinfo->name, module_name) == 0) { in module_load()
264 for (sl = modinfo->deps; *sl != NULL; sl++) { in module_load()
272 for (sl = modinfo->deps; *sl != NULL; sl++) { in module_load()
289 * If we don't find it in any dir, that can be fine too: user in module_load()
317 static bool module_loaded_qom_all;
327 return -1; in module_load_qom()
331 for (modinfo = module_info; modinfo->name != NULL; modinfo++) { in module_load_qom()
332 if (!modinfo->objs) { in module_load_qom()
338 for (sl = modinfo->objs; *sl != NULL; sl++) { in module_load_qom()
342 return -1; in module_load_qom()
344 rv = module_load("", modinfo->name, errp); in module_load_qom()
362 for (modinfo = module_info; modinfo->name != NULL; modinfo++) { in module_load_qom_all()
364 if (!modinfo->objs) { in module_load_qom_all()
370 if (module_load("", modinfo->name, &local_err) < 0) { in module_load_qom_all()
382 for (modinfo = module_info; modinfo->name != NULL; modinfo++) { in qemu_load_module_for_opts()
383 if (!modinfo->opts) { in qemu_load_module_for_opts()
386 for (sl = modinfo->opts; *sl != NULL; sl++) { in qemu_load_module_for_opts()
389 if (module_load("", modinfo->name, &local_err) < 0) { in qemu_load_module_for_opts()