Function added to arch_init.c because it depends on arch-specific settings.
Changes v1 -> v2: - Move qemu_read_default_config_file() prototype to qemu-config.h Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- arch_init.c | 18 ++++++++++++++++++ qemu-config.h | 4 ++++ vl.c | 10 ++-------- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/arch_init.c b/arch_init.c index 9a35aee..4008115 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 20d707f..ff934a1 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 ae91a8a..1e5e593 100644 --- a/vl.c +++ b/vl.c @@ -2354,14 +2354,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); } } -- 1.7.3.2