If cannot get/set rlinit warn_print called, which uses monitor_lock mutex. monitor_lock mutex initialized in monitor_init_globals, then monitor_init_globals should be called before os_setup_limits.
Signed-off-by: Nikita Ostrenkov <n.ostrenkov@gmail.com>
---
system/runstate.c | 1 -
system/vl.c | 2 ++
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/system/runstate.c b/system/runstate.c
index 272801d307..de01cb9833 100644
--- a/system/runstate.c
+++ b/system/runstate.c
@@ -874,7 +874,6 @@ void qemu_init_subsystems(void)
runstate_init();
precopy_infrastructure_init();
postcopy_infrastructure_init();
- monitor_init_globals();
if (qcrypto_init(&err) < 0) {
error_reportf_err(err, "cannot initialize crypto: ");
diff --git a/system/vl.c b/system/vl.c
index 04f78466c4..0742a3b407 100644
--- a/system/vl.c
+++ b/system/vl.c
@@ -2885,6 +2885,8 @@ void qemu_init(int argc, char **argv)
error_init(argv[0]);
qemu_init_exec_dir(argv[0]);
+ monitor_init_globals();
+
os_setup_limits();
#ifdef CONFIG_MODULES
--
2.34.1