Re: [PATCH RFC 0/2] assign each vcpu an owning thread and improve yielding

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 03.12.2014 um 13:54 schrieb Paolo Bonzini:
> 
> 
> On 03/12/2014 13:12, David Hildenbrand wrote:
>>> This series improves yielding on architectures that cannot disable preemption
>>> while entering the guest and makes the creating thread of a VCPU the owning
>>> thread and therefore the yield target when yielding to that VCPU.
>>>
>>> We should focus on the case creating thread == executing thread and therefore
>>> remove the complicated handling of PIDs involving synchronize_rcus.
>>>
>>> This way we can speed up the creation of VCPUs and directly yield to the
>>> executing vcpu threads.
>>>
>>> Please note that - in theory - all VCPU ioctls should be triggered from the same
>>> VCPU thread, so changing threads is not a scenario we should optimize.
>>>
>>>
>>> David Hildenbrand (2):
>>>   KVM: don't check for PF_VCPU when yielding
>>>   KVM: thread creating a vcpu is the owner of that vcpu
>>>
>>>  include/linux/kvm_host.h |  1 +
>>>  virt/kvm/kvm_main.c      | 22 ++--------------------
>>>  2 files changed, 3 insertions(+), 20 deletions(-)
>>>
>>
>> Hi Paolo,
>>
>> would be good if you could have a look at these patches.
> 
> Sure.
> 
> I think patch 1 is fine and I am applying it.  For patch 2, what about
> moving the ->pid assignment in the KVM_RUN case of kvm_vcpu_ioctl?

That was my initial patch for the rcu specific latencies (do you remember?) But IMHO  patch 2 is actually the proper thing to do, no?

Christian

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux