Messages in this thread | | | Date | Mon, 11 Mar 2013 15:19:08 +0100 | From | Jan Kiszka <> | Subject | Re: [PATCH] x86: kvm: reset the bootstrap processor when it gets an INIT |
| |
On 2013-03-11 15:12, Gleb Natapov wrote: > On Mon, Mar 11, 2013 at 03:10:45PM +0100, Jan Kiszka wrote: >> On 2013-03-11 15:09, Gleb Natapov wrote: >>> On Mon, Mar 11, 2013 at 03:06:18PM +0100, Jan Kiszka wrote: >>>> On 2013-03-11 15:05, Gleb Natapov wrote: >>>>> On Mon, Mar 11, 2013 at 03:01:40PM +0100, Jan Kiszka wrote: >>>>>>> We are not moving away from mp_state, we are moving away from using >>>>>>> mp_state for signaling because with nested virt INIT does not always >>>>>>> change mp_state, not only that it can change mp_state long after signal >>>>>>> is received after vmx off is done. >>>>>> >>>>>> Right. >>>>>> >>>>>> BTW, for that to happen, we will also need to influence the INIT level. >>>>>> Unless I misread the spec, INIT is blocked while in root mode, and if >>>>>> you deassert INIT before leaving root (vmxoff, vmenter), nothing >>>>>> actually happens. So what matters is the INIT signal level at the exit >>>>>> of root mode. >>>>>> >>>>> You are talking about INIT# signal received via CPU pin, right? I think >>>>> INIT send by IPI cannot go away. >>>> >>>> Why shouldn't it? Besides edge, there is also level-triggered INIT. >>>> >>> OK, so level-triggered INIT can be de-asserted what about edge triggered >>> one? :) >> >> It should be lost while in root mode. >> > Ah, that's great. Removes some potential complications.
Again, that's my interpretation. I didn't check this against real HW yet. It just makes most sense, given what I read.
Jan
-- Siemens AG, Corporate Technology, CT RTC ITP SDP-DE Corporate Competence Center Embedded Linux
| |