Messages in this thread | | | Date | Tue, 5 Oct 2021 19:15:43 +0200 | Subject | Re: [PATCH v1] KVM: isolation: retain initial mask for kthread VM worker | From | Paolo Bonzini <> |
| |
On 05/10/21 15:21, Marcelo Tosatti wrote: >> The QEMU I/O thread is not hogging the CPU 100% of the time, and >> therefore the nx-recovery thread should be able to run on that CPU. > > 1) The cpumask of the parent thread is not inherited > > set_cpus_allowed_ptr(task, housekeeping_cpumask(HK_FLAG_KTHREAD)); > > On __kthread_create_on_node should fail (because its cgroup, the one > inherited from QEMU, contains only isolated CPUs). > > (The QEMU I/O thread runs on an isolated CPU, and is moved by libvirt > to HK-cgroup as mentioned before).
Ok, that's the part that I missed. So the core issue is that libvirt moves the I/O thread out of the isolated-CPU cgroup too late? This in turn is because libvirt gets access to the QEMU monitor too late (the KVM file descriptor is created when QEMU processes the command line).
Paolo
| |