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

Re: [Xen-devel] [PATCH RFC V4 4/5] kvm : pv-ticketlocks support for linux guests running on KVM hypervisor

On 01/24/2012 07:38 PM, Avi Kivity wrote:
On 01/18/2012 11:52 PM, Jeremy Fitzhardinge wrote:
On 01/19/2012 12:54 AM, Srivatsa Vaddagiri wrote:

That logic relies on the "kick" being level triggered, so that "kick"
before "block" will cause the block to fall out immediately.  If you're
using "hlt" as the block and it has the usual edge-triggered behaviour,
what stops a "kick-before-hlt" from losing the kick?
Hmm ..'hlt' should result in a check for kick request (in hypervisor
context) before vcpu is put to sleep. IOW vcpu1 that is attempting to kick vcpu0
will set a 'somebody_tried_kicking_vcpu0' flag, which hypervisor should check
before it puts vcpu0 to sleep because of trapped 'hlt' instruction.

Won't that trap the 'kick-before-hlt' case? What am I missing here?

Nothing, that sounds fine.  It wasn't clear to me that your kick
operation left persistent state, and so has a level-triggered effect on hlt.

btw, this persistent state needs to be saved/restored for live
migration.  Best to put it into some MSR.

I did not quite get it. Did you mean, add a new MSR to msrs_to_save[],
and may be retain only the kicked/pv_unhalt flag (persistent state) and get rid of PVLOCK_KICK vcpu->request?

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.