It's implemented only for x86, but it is not architecture-dependent. For
example on ARM you would implement it by mapping guest WFx to the host
instructions.

Paolo

Il lun 19 dic 2022, 17:11 Philippe Mathieu-Daudé <[email protected]> ha
scritto:

> Hi Paolo,
>
> I just noticed 'enable_cpu_pm' which seems architecture specific
> option that ended into common code:
>
> $ git grep -E 'cpu[_-]pm'
> accel/tcg/user-exec-stub.c:5:bool enable_cpu_pm = false;
> include/sysemu/sysemu.h:49:extern bool enable_cpu_pm;
> Binary file pc-bios/skiboot.lid matches
> qemu-options.hx:4196:    "-overcommit [mem-lock=on|off][cpu-pm=on|off]\n"
> qemu-options.hx:4199:    "                cpu-pm=on|off controls cpu
> power management (default: off)\n",
> qemu-options.hx:4204:``-overcommit cpu-pm=on|off``
> qemu-options.hx:4214:    guest) can be enabled via ``cpu-pm=on``
> (disabled by default). This
> softmmu/globals.c:38:bool enable_cpu_pm;
> softmmu/vl.c:350:            .name = "cpu-pm",
> softmmu/vl.c:3440:                enable_cpu_pm =
> qemu_opt_get_bool(opts, "cpu-pm", false);
> target/i386/host-cpu.c:44:static void host_cpu_enable_cpu_pm(X86CPU *cpu)
> target/i386/host-cpu.c:88:    if (cpu->max_features && enable_cpu_pm) {
> target/i386/host-cpu.c:89:        host_cpu_enable_cpu_pm(cpu);
> target/i386/kvm/kvm-cpu.c:43:        if (enable_cpu_pm &&
> kvm_has_waitpkg()) {
> target/i386/kvm/kvm.c:390:        if (enable_cpu_pm) {
> target/i386/kvm/kvm.c:2576:    if (enable_cpu_pm) {
>
> Do we want to maintain this as a generic property or
> can it be deprecated / converted to a machine-specific one?
>
> Thanks,
>
> Phil.
>
>

Reply via email to