@@ -82,4 +82,4 @@ static void fsdev_register_config(void)
qemu_add_opts(&qemu_fsdev_opts);
qemu_add_opts(&qemu_virtfs_opts);
}
-machine_init(fsdev_register_config);
+config_init(fsdev_register_config)
@@ -67,7 +67,7 @@ static void acpi_register_config(void)
qemu_add_opts(&qemu_acpi_opts);
}
-machine_init(acpi_register_config);
+config_init(acpi_register_config)
static int acpi_checksum(const uint8_t *data, int len)
{
@@ -319,7 +319,7 @@ static void smbios_register_config(void)
qemu_add_opts(&qemu_smbios_opts);
}
-machine_init(smbios_register_config);
+config_init(smbios_register_config)
static void smbios_validate_table(void)
{
@@ -42,6 +42,7 @@ static void __attribute__((constructor)) do_qemu_init_ ## function(void) \
typedef enum {
MODULE_INIT_BLOCK,
+ MODULE_INIT_CONFIG,
MODULE_INIT_MACHINE,
MODULE_INIT_QAPI,
MODULE_INIT_QOM,
@@ -49,6 +50,7 @@ typedef enum {
} module_init_type;
#define block_init(function) module_init(function, MODULE_INIT_BLOCK)
+#define config_init(function) module_init(function, MODULE_INIT_CONFIG)
#define machine_init(function) module_init(function, MODULE_INIT_MACHINE)
#define qapi_init(function) module_init(function, MODULE_INIT_QAPI)
#define type_init(function) module_init(function, MODULE_INIT_QOM)
@@ -927,4 +927,4 @@ static void spice_register_config(void)
{
qemu_add_opts(&qemu_spice_opts);
}
-machine_init(spice_register_config);
+config_init(spice_register_config)
@@ -3883,4 +3883,4 @@ static void vnc_register_config(void)
{
qemu_add_opts(&qemu_vnc_opts);
}
-machine_init(vnc_register_config);
+config_init(vnc_register_config)
@@ -2996,6 +2996,8 @@ int main(int argc, char **argv, char **envp)
qemu_add_opts(&qemu_semihosting_config_opts);
qemu_add_opts(&qemu_fw_cfg_opts);
+ module_call_init(MODULE_INIT_CONFIG);
+
runstate_init();
if (qcrypto_init(&err) < 0) {
This untangles QemuOpts from machine_init(), which is to be dropped. Signed-off-by: Andreas Färber <afaerber@suse.de> --- fsdev/qemu-fsdev-opts.c | 2 +- hw/acpi/core.c | 2 +- hw/smbios/smbios.c | 2 +- include/qemu/module.h | 2 ++ ui/spice-core.c | 2 +- ui/vnc.c | 2 +- vl.c | 2 ++ 7 files changed, 9 insertions(+), 5 deletions(-)