On 24/02/2017 00:19, Marcelo Tosatti wrote: >>> 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. The userspace program sets a policy for the whole system. >> 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). Stop a guest that is using cpufreq, start a guest that is not using it. The second guest's performance now depends on the state that the first guest left in cpufreq. I think this is abusing the userspace governor. Unfortunately cpufreq governors cannot be stacked. Paolo