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. -- error compiling committee.c: too many arguments to function _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization