diff options
| author | Theofilos Augoustis <theofilos.augoustis@gmail.com> | 2025-10-08 16:01:20 +0200 |
|---|---|---|
| committer | Theofilos Augoustis <theofilos.augoustis@gmail.com> | 2025-10-08 16:01:20 +0200 |
| commit | c797173d37d64b92d5cfa225dcb63d9c69bd31da (patch) | |
| tree | 2e89275849e2beca8ddcf15ecccd322cc9d60a72 | |
| parent | 0adf626718bc0ca9c46550249a76047f8e45da15 (diff) | |
| download | focaccia-qemu-c797173d37d64b92d5cfa225dcb63d9c69bd31da.tar.gz focaccia-qemu-c797173d37d64b92d5cfa225dcb63d9c69bd31da.zip | |
Add basic Focaccia stub
| -rw-r--r-- | contrib/plugins/focaccia.c | 29 | ||||
| -rw-r--r-- | contrib/plugins/meson.build | 2 |
2 files changed, 30 insertions, 1 deletions
diff --git a/contrib/plugins/focaccia.c b/contrib/plugins/focaccia.c new file mode 100644 index 0000000000..c638647d95 --- /dev/null +++ b/contrib/plugins/focaccia.c @@ -0,0 +1,29 @@ +#include <qemu-plugin.h> + +static void plugin_init(void) { +} + +static void plugin_exit(qemu_plugin_id_t id, void* p) { + printf("Plugin has completed!\n"); +} + +// argc and argv correspond to the arguments passed via -plugin focaccia.so,arg1=<arg1>,arg2=<arg2> +QEMU_PLUGIN_EXPORT +int qemu_plugin_install(qemu_plugin_id_t id, + const qemu_info_t *info, + int argc, char **argv) +{ + int i; + + // Process plugin arguments + printf("Received plugin options:\n"); + for (i = 0; i < argc; i++) { + printf("%s\n", argv[i]); + } + + plugin_init(); + + qemu_plugin_register_atexit_cb(id, plugin_exit, NULL); + return 0; +} + diff --git a/contrib/plugins/meson.build b/contrib/plugins/meson.build index fa8a426c8b..cd97cc15a2 100644 --- a/contrib/plugins/meson.build +++ b/contrib/plugins/meson.build @@ -1,5 +1,5 @@ contrib_plugins = ['bbv', 'cache', 'cflow', 'drcov', 'execlog', 'hotblocks', - 'hotpages', 'howvec', 'hwprofile', 'ips', 'stoptrigger'] + 'hotpages', 'howvec', 'hwprofile', 'ips', 'stoptrigger', 'focaccia'] if host_os != 'windows' # lockstep uses socket.h contrib_plugins += 'lockstep' |