[PATCH] KVM: PPC: Book3S: fix XIVE migration of pending interrupts

Michael Ellerman mpe at ellerman.id.au
Fri Dec 22 22:22:29 AEDT 2017


Laurent Vivier <lvivier at redhat.com> writes:

> On 22/12/2017 08:54, Paul Mackerras wrote:
>> On Fri, Dec 22, 2017 at 03:34:20PM +1100, Michael Ellerman wrote:
>>> Laurent Vivier <lvivier at redhat.com> writes:
>>>
>>>> On 12/12/2017 13:02, Cédric Le Goater wrote:
>>>>> When restoring a pending interrupt, we are setting the Q bit to force
>>>>> a retrigger in xive_finish_unmask(). But we also need to force an EOI
>>>>> in this case to reach the same initial state : P=1, Q=0.
>>>>>
>>>>> This can be done by not setting 'old_p' for pending interrupts which
>>>>> will inform xive_finish_unmask() that an EOI needs to be sent.
>>>>>
>>>>> Suggested-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
>>>>> Signed-off-by: Cédric Le Goater <clg at kaod.org>
>>>>> ---
>>>>>
>>>>>  Tested with a guest running iozone.
>>>>>
>>>>>  arch/powerpc/kvm/book3s_xive.c | 4 ++--
>>>>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> We really need this patch to fix VM migration on POWER9.
>>>> When will it be merged?
>>>
>>> Paul is away, so I'll merge it via the powerpc tree.
>>>
>>> I'll mark it:
>>>
>>>   Fixes: 5af50993850a ("KVM: PPC: Book3S HV: Native usage of the XIVE interrupt controller")
>>>   Cc: stable at vger.kernel.org # v4.12+
>> 
>> Thanks for doing that.
>> 
>> If you felt like merging Alexey's patch "KVM: PPC: Book3S PR: Fix WIMG
>> handling under pHyp" with my acked-by, that would be fine too.  The
>> commit message needs a little work - the reason for using HPTE_R_M is
>> not just because it seems to work, but because current POWER
>> processors require M set on mappings for normal pages, and pHyp
>> enforces that.
>
> We also need:
>
> KVM: PPC: Book3S HV: Fix pending_pri value in kvmppc_xive_get_icp()

I've merged that one.

cheers


More information about the Linuxppc-dev mailing list