Messages in this thread | | | Date | Thu, 23 Feb 2017 20:19:26 -0300 | From | Marcelo Tosatti <> | Subject | Re: [patch 0/3] KVM CPU frequency change hypercalls |
| |
On Thu, Feb 23, 2017 at 06:35:24PM +0100, Paolo Bonzini wrote: > > > On 03/02/2017 20:09, Radim Krcmar wrote: > > One reason why we have a kernel/userspace split is to allow sharing of > > CPU time. Each application then its state that the kernel keeps track > > of and saves/restores while time-multiplexing. > > > > Our frequency scaling interface goes against the idea -- guest kernel > > cannot schedule multiple userspaces on the same vCPU, because they could > > conflict by overriding frequency. > > > > i.e. our feature implies userspace tasks pinned to isolated vCPUs.
This is how cpufreq-userspace works:
2.2 Governor ------------
On all other cpufreq implementations, these boundaries still need to be set. Then, a "governor" must be selected. Such a "governor" decides what speed the processor shall run within the boundaries. One such "governor" is the "userspace" governor. This one allows the user - or a yet-to-implement userspace program - to decide what specific speed the processor shall run at.
> That's bad. This feature is broken by design unless it does proper > save/restore across preemption.
Whats the current usecase, or forseeable future usecase, for save/restore across preemption again? (which would validate the broken by design claim).
> You don't need a hypercall. Add a cpufreq driver in DPDK that doesn't > use sysfs, and connect it to a daemon in the host through virtio-serial > or vsock. > > Paolo
Hypercalls overcome the problems mentioned in the first email of the thread, i think you missed them:
"[patch 0/3] KVM CPU frequency change hypercalls"
| |