diff --git a/arch_init.c b/arch_init.c index 9a35aeea30da0fc8bede3b82b391f93188961bc5..4008115e35a653b071166fd7a5a4a485c665491a 100644 --- a/arch_init.c +++ b/arch_init.c @@ -112,6 +112,24 @@ const uint32_t arch_type = QEMU_ARCH; #define ALL_EQ(v1, v2) ((v1) == (v2)) #endif + +int qemu_read_default_config_files(void) +{ + int ret; + + ret = qemu_read_config_file(CONFIG_QEMU_CONFDIR "/qemu.conf"); + if (ret < 0 && ret != -ENOENT) { + return ret; + } + + ret = qemu_read_config_file(arch_config_name); + if (ret < 0 && ret != -ENOENT) { + return ret; + } + + return 0; +} + static int is_dup_page(uint8_t *page) { VECTYPE *p = (VECTYPE *)page; diff --git a/qemu-config.h b/qemu-config.h index 20d707fa1f10ed2b7bd235fee3a16ba6fcfa4034..ff934a1edaf28a03c45cea571703e9d3a05bcaad 100644 --- a/qemu-config.h +++ b/qemu-config.h @@ -16,4 +16,8 @@ int qemu_config_parse(FILE *fp, QemuOptsList **lists, const char *fname); int qemu_read_config_file(const char *filename); +/* Read default Qemu config files + */ +int qemu_read_default_config_files(void); + #endif /* QEMU_CONFIG_H */ diff --git a/vl.c b/vl.c index 5e0080b98faec0de09b069ce4d972d00bf289da1..5d1d0f99932fc3d3c855462f6dcbc814e82016d6 100644 --- a/vl.c +++ b/vl.c @@ -2358,14 +2358,8 @@ int main(int argc, char **argv, char **envp) if (defconfig) { int ret; - - ret = qemu_read_config_file(CONFIG_QEMU_CONFDIR "/qemu.conf"); - if (ret < 0 && ret != -ENOENT) { - exit(1); - } - - ret = qemu_read_config_file(arch_config_name); - if (ret < 0 && ret != -ENOENT) { + ret = qemu_read_default_config_files(); + if (ret < 0) { exit(1); } }