aboutsummaryrefslogtreecommitdiff
path: root/os-posix.c
diff options
context:
space:
mode:
authorMichael Tokarev <mjt@tls.msk.ru>2023-09-01 13:12:58 +0300
committerPaolo Bonzini <pbonzini@redhat.com>2023-09-01 23:46:20 +0200
commit8a768db16afacf2056a753b99b81a5855c3320fa (patch)
tree2070fbb62059e501e5b1895f7f209ff629d6914d /os-posix.c
parent5b15639003a267b8254ae597a0b8bfefe36ced7b (diff)
os-posix.c, softmmu/vl.c: move os_parse_cmd_args() into qemu_init()
This will stop linking softmmu-specific os_parse_cmd_args() into every qemu executable which happens to use other functions from os-posix.c, such as os_set_line_buffering() or os_setup_signal_handling(). Also, since there's no win32-specific options, *all* option parsing is now done in softmmu/vl.c:qemu_init(), which is easier to read without extra indirection, - all options are in the single function now. This effectively reverts commit 59a5264b99434. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Reviewed-by: Eric Blake <eblake@redhat.com> Message-ID: <20230901101302.3618955-5-mjt@tls.msk.ru> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'os-posix.c')
-rw-r--r--os-posix.c82
1 files changed, 0 insertions, 82 deletions
diff --git a/os-posix.c b/os-posix.c
index ed0787ecfd..fc2883ff82 100644
--- a/os-posix.c
+++ b/os-posix.c
@@ -31,18 +31,13 @@
/* Needed early for CONFIG_BSD etc. */
#include "net/slirp.h"
-#include "qemu/qemu-options.h"
#include "qemu/error-report.h"
#include "qemu/log.h"
#include "sysemu/runstate.h"
#include "qemu/cutils.h"
-#include "qemu/config-file.h"
-#include "qemu/option.h"
-#include "qemu/module.h"
#ifdef CONFIG_LINUX
#include <sys/prctl.h>
-#include "qemu/async-teardown.h"
#endif
/*
@@ -142,59 +137,6 @@ bool os_set_runas(const char *optarg)
return true;
}
-/*
- * Parse OS specific command line options.
- * return 0 if option handled, -1 otherwise
- */
-int os_parse_cmd_args(int index, const char *optarg)
-{
- switch (index) {
- case QEMU_OPTION_runas:
- if (!os_set_runas(optarg)) {
- error_report("User \"%s\" doesn't exist"
- " (and is not <uid>:<gid>)",
- optarg);
- exit(1);
- }
- break;
- case QEMU_OPTION_chroot:
- warn_report("option is deprecated, use '-run-with chroot=...' instead");
- os_set_chroot(optarg);
- break;
- case QEMU_OPTION_daemonize:
- daemonize = 1;
- break;
-#if defined(CONFIG_LINUX)
- /* deprecated */
- case QEMU_OPTION_asyncteardown:
- init_async_teardown();
- break;
-#endif
- case QEMU_OPTION_run_with: {
- const char *str;
- QemuOpts *opts = qemu_opts_parse_noisily(qemu_find_opts("run-with"),
- optarg, false);
- if (!opts) {
- exit(1);
- }
-#if defined(CONFIG_LINUX)
- if (qemu_opt_get_bool(opts, "async-teardown", false)) {
- init_async_teardown();
- }
-#endif
- str = qemu_opt_get(opts, "chroot");
- if (str) {
- os_set_chroot(str);
- }
- break;
- }
- default:
- return -1;
- }
-
- return 0;
-}
-
static void change_process_uid(void)
{
assert((user_uid == (uid_t)-1) || user_pwd == NULL);
@@ -371,27 +313,3 @@ int os_mlock(void)
return -ENOSYS;
#endif
}
-
-static QemuOptsList qemu_run_with_opts = {
- .name = "run-with",
- .head = QTAILQ_HEAD_INITIALIZER(qemu_run_with_opts.head),
- .desc = {
-#if defined(CONFIG_LINUX)
- {
- .name = "async-teardown",
- .type = QEMU_OPT_BOOL,
- },
-#endif
- {
- .name = "chroot",
- .type = QEMU_OPT_STRING,
- },
- { /* end of list */ }
- },
-};
-
-static void register_runwith(void)
-{
- qemu_add_opts(&qemu_run_with_opts);
-}
-opts_init(register_runwith);