On Mon, 3 Jun 2024 17:02:21 -0700
Zide Chen <[email protected]> wrote:
> Both cpu-pm and mem-lock are related to system resource overcommit, but
> they are separate from each other, in terms of how they are realized,
> and of course, they are applied to different system resources.
>
> It's tempting to use separate command lines to specify their behavior.
> e.g., in the following example, the cpu-pm command is quietly
> overwritten, and it's not easy to notice it without careful inspection.
>
> --overcommit mem-lock=on
> --overcommit cpu-pm=on
>
> Fixes: c8c9dc42b7ca ("Remove the deprecated -realtime option")
> Suggested-by: Thomas Huth <[email protected]>
> Signed-off-by: Zide Chen <[email protected]>
> Reviewed-by: Thomas Huth <[email protected]>
> Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
> ---
>
> V3: added Reviewed-by
>
> v2:
> Thanks to Thomas' suggestion, changed to this better approach, which
> is more generic and can handle situations like: "enabled the option in
> the config file, and now you'd like to disable it on the command line
> again".
>
> system/vl.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/system/vl.c b/system/vl.c
> index a3eede5fa5b8..dfa6cdd9283b 100644
> --- a/system/vl.c
> +++ b/system/vl.c
> @@ -3545,8 +3545,8 @@ void qemu_init(int argc, char **argv)
> if (!opts) {
> exit(1);
> }
> - enable_mlock = qemu_opt_get_bool(opts, "mem-lock", false);
> - enable_cpu_pm = qemu_opt_get_bool(opts, "cpu-pm", false);
> + enable_mlock = qemu_opt_get_bool(opts, "mem-lock",
> enable_mlock);
> + enable_cpu_pm = qemu_opt_get_bool(opts, "cpu-pm",
> enable_cpu_pm);
> break;
> case QEMU_OPTION_compat:
> {