Lines Matching refs:desc
62 .desc = {
84 struct qemu_plugin_desc *desc; in plugin_find_desc() local
86 QTAILQ_FOREACH(desc, head, entry) { in plugin_find_desc()
87 if (strcmp(desc->path, path) == 0) { in plugin_find_desc()
88 return desc; in plugin_find_desc()
182 static int plugin_load(struct qemu_plugin_desc *desc, const qemu_info_t *info, Error **errp) in plugin_load() argument
191 ctx->desc = desc; in plugin_load()
193 ctx->handle = g_module_open(desc->path, G_MODULE_BIND_LOCAL); in plugin_load()
195 error_setg(errp, "Could not load plugin %s: %s", desc->path, g_module_error()); in plugin_load()
200 error_setg(errp, "Could not load plugin %s: %s", desc->path, g_module_error()); in plugin_load()
207 desc->path); in plugin_load()
213 desc->path, g_module_error()); in plugin_load()
220 desc->path, version, QEMU_PLUGIN_MIN_VERSION); in plugin_load()
225 desc->path, version, QEMU_PLUGIN_VERSION); in plugin_load()
249 rc = install(ctx->id, info, desc->argc, desc->argv); in plugin_load()
253 desc->path, rc); in plugin_load()
274 static void plugin_desc_free(struct qemu_plugin_desc *desc) in plugin_desc_free() argument
278 for (i = 0; i < desc->argc; i++) { in plugin_desc_free()
279 g_free(desc->argv[i]); in plugin_desc_free()
281 g_free(desc->argv); in plugin_desc_free()
282 g_free(desc->path); in plugin_desc_free()
283 g_free(desc); in plugin_desc_free()
297 struct qemu_plugin_desc *desc, *next; in qemu_plugin_load_list() local
312 QTAILQ_FOREACH_SAFE(desc, head, entry, next) { in qemu_plugin_load_list()
315 err = plugin_load(desc, info, errp); in qemu_plugin_load_list()
319 QTAILQ_REMOVE(head, desc, entry); in qemu_plugin_load_list()
373 plugin_desc_free(ctx->desc); in plugin_reset_destroy__locked()