diff --git a/system/vl.c b/system/vl.c
index a3eede5fa5b8..757c7abc36ed 100644
--- a/system/vl.c
+++ b/system/vl.c
@@ -2787,12 +2787,12 @@ void qemu_init(int argc, char **argv)
     error_init(argv[0]);
     qemu_init_exec_dir(argv[0]);
 
-    os_setup_limits();
-
     qemu_init_arch_modules();
 
     qemu_init_subsystems();
 
+    os_setup_limits();
+
     /* first pass of option parsing */
     optind = 1;
     while (optind < argc) {
-- 
2.34.1

