diff options
author | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-02-10 07:03:06 +0100 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2020-02-12 20:10:08 +0100 |
commit | 120881b9e888689cbdb90a1dd1689684d8bc95f3 (patch) | |
tree | fde0c0f8898501e958580304eddb83db93601596 /Documentation/virtual | |
parent | 033741c6c997e60f9c2de280925519d3ccff5366 (diff) |
docs: virt: guest-halt-polling.txt convert to ReST
Due to some merge conflict, this file ended being alone under
Documentation/virtual.
The file itself is almost at ReST format. Just minor
adjustments are needed:
- Adjust title markup;
- Adjust a list identation;
- add a literal block markup;
- Add some blank lines.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'Documentation/virtual')
-rw-r--r-- | Documentation/virtual/guest-halt-polling.txt | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/Documentation/virtual/guest-halt-polling.txt b/Documentation/virtual/guest-halt-polling.txt deleted file mode 100644 index b3a2a294532d..000000000000 --- a/Documentation/virtual/guest-halt-polling.txt +++ /dev/null @@ -1,78 +0,0 @@ -Guest halt polling -================== - -The cpuidle_haltpoll driver, with the haltpoll governor, allows -the guest vcpus to poll for a specified amount of time before -halting. -This provides the following benefits to host side polling: - - 1) The POLL flag is set while polling is performed, which allows - a remote vCPU to avoid sending an IPI (and the associated - cost of handling the IPI) when performing a wakeup. - - 2) The VM-exit cost can be avoided. - -The downside of guest side polling is that polling is performed -even with other runnable tasks in the host. - -The basic logic as follows: A global value, guest_halt_poll_ns, -is configured by the user, indicating the maximum amount of -time polling is allowed. This value is fixed. - -Each vcpu has an adjustable guest_halt_poll_ns -("per-cpu guest_halt_poll_ns"), which is adjusted by the algorithm -in response to events (explained below). - -Module Parameters -================= - -The haltpoll governor has 5 tunable module parameters: - -1) guest_halt_poll_ns: -Maximum amount of time, in nanoseconds, that polling is -performed before halting. - -Default: 200000 - -2) guest_halt_poll_shrink: -Division factor used to shrink per-cpu guest_halt_poll_ns when -wakeup event occurs after the global guest_halt_poll_ns. - -Default: 2 - -3) guest_halt_poll_grow: -Multiplication factor used to grow per-cpu guest_halt_poll_ns -when event occurs after per-cpu guest_halt_poll_ns -but before global guest_halt_poll_ns. - -Default: 2 - -4) guest_halt_poll_grow_start: -The per-cpu guest_halt_poll_ns eventually reaches zero -in case of an idle system. This value sets the initial -per-cpu guest_halt_poll_ns when growing. This can -be increased from 10000, to avoid misses during the initial -growth stage: - -10k, 20k, 40k, ... (example assumes guest_halt_poll_grow=2). - -Default: 50000 - -5) guest_halt_poll_allow_shrink: - -Bool parameter which allows shrinking. Set to N -to avoid it (per-cpu guest_halt_poll_ns will remain -high once achieves global guest_halt_poll_ns value). - -Default: Y - -The module parameters can be set from the debugfs files in: - - /sys/module/haltpoll/parameters/ - -Further Notes -============= - -- Care should be taken when setting the guest_halt_poll_ns parameter as a -large value has the potential to drive the cpu usage to 100% on a machine which -would be almost entirely idle otherwise. |