qemu/include/sysemu
Claudio Fontana b0c3cf9407 cpu-throttle: new module, extracted from cpus.c
move the vcpu throttling functionality into its own module.

This functionality is not specific to any accelerator,
and it is used currently by migration to slow down guests to try to
have migrations converge, and by the cocoa MacOS UI to throttle speed.

cpu-throttle contains the controls to adjust and inspect throttle
settings, start (set) and stop vcpu throttling, and the throttling
function itself that is run periodically on vcpus to make them take a nap.

Execution of the throttling function on all vcpus is triggered by a timer,
registered at module initialization.

No functionality change.

Signed-off-by: Claudio Fontana <cfontana@suse.de>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Laurent Vivier <lvivier@redhat.com>
Message-Id: <20200629093504.3228-3-cfontana@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-07-10 18:04:49 -04:00
..
accel.h sysemu/accel: Restrict machine methods to system-mode 2020-06-12 11:12:44 -04:00
arch_init.h Add rx-softmmu 2020-03-19 17:58:05 +01:00
balloon.h virtio-balloon: Rip out qemu_balloon_inhibit() 2020-07-02 05:54:59 -04:00
block-backend.h block: Add blk_make_empty() 2020-05-18 19:05:25 +02:00
blockdev.h blockdev: Deprecate -drive with bogus interface type 2020-06-23 16:07:07 +02:00
cpu-throttle.h cpu-throttle: new module, extracted from cpus.c 2020-07-10 18:04:49 -04:00
cpus.h tcg: convert "-accel threads" to a QOM property 2019-12-17 19:32:27 +01:00
cryptodev-vhost-user.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
cryptodev-vhost.h Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
cryptodev.h misc: Replace zero-length arrays with flexible array member (automatic) 2020-03-16 22:07:42 +01:00
device_tree.h device_tree: Constify compat in qemu_fdt_node_path() 2020-04-30 15:35:41 +01:00
dma.h Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
dump-arch.h dump: allow target to set the physical base 2016-01-15 14:40:25 +00:00
dump.h qapi: Split dump.json off misc.json 2019-07-02 13:37:00 +02:00
hax.h Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
hostmem.h hostmem: fix strict bind policy 2020-02-19 16:50:02 +00:00
hvf.h i386: hvf: Don't duplicate register reset 2020-07-10 18:02:19 -04:00
hw_accel.h i386: hvf: Add hvf_cpu_synchronize_pre_loadvm() 2020-07-10 18:02:18 -04:00
iothread.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
kvm.h KVM: Kick resamplefd for split kernel irqchip 2020-06-10 12:10:33 -04:00
kvm_int.h KVM: Move hwpoison page related functions into kvm-all.c 2020-05-14 15:03:09 +01:00
memory_mapping.h Clean up inclusion of exec/cpu-common.h 2019-08-16 13:31:52 +02:00
numa.h initialize MachineState::ram in NUMA case 2020-02-19 16:49:53 +00:00
os-posix.h util: drop old utimensat() compat code 2017-05-25 10:30:14 +02:00
os-win32.h glib: use portable g_setenv() 2019-12-17 09:05:23 +01:00
qtest.h qtest: add in-process incoming command handler 2020-02-22 08:26:48 +00:00
replay.h replay: record and replay random number sources 2020-01-07 12:08:39 +01:00
reset.h hw: move reset handlers from vl.c to hw/core 2017-01-16 17:52:35 +01:00
rng-random.h rng-random: rename RndRandom to RngRandom 2016-05-23 12:18:43 +05:30
rng.h virtio-rng: change default backend to rng-builtin 2019-09-04 06:32:51 -04:00
runstate.h pvpanic: implement crashloaded event handling 2020-01-24 20:59:07 +01:00
seccomp.h sandbox: disable -sandbox if CONFIG_SECCOMP undefined 2018-06-01 13:44:15 +02:00
sev.h kvm: introduce memory encryption APIs 2018-03-13 12:04:03 +01:00
sysemu.h qom/object: Move Object typedef to 'qemu/typedefs.h' 2020-06-10 12:09:36 -04:00
tcg.h sysemu/tcg: Only declare tcg_allowed when TCG is available 2020-06-12 11:12:44 -04:00
tpm.h arm/acpi: TPM2 ACPI table support 2020-06-09 12:46:45 -04:00
tpm_backend.h Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
tpm_util.h hw/tpm: Make 'tpm_util.h' publicly accessible as "sysemu/tpm_util.h" 2020-06-19 07:25:48 -04:00
vhost-user-backend.h Add vhost-user-backend 2019-05-10 12:48:35 +02:00
watchdog.h Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
whpx.h WHPX: TSC get and set should be dependent on VM state 2020-03-16 23:02:21 +01:00
xen-mapcache.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
xen.h accel: Move Xen accelerator code under accel/xen/ 2020-06-10 12:09:56 -04:00