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. > >
