mbox series

[0/4] powerpc/xive: add support for H_INT_RESET

Message ID 20180403071548.19829-1-clg@kaod.org (mailing list archive)
Headers show
Series powerpc/xive: add support for H_INT_RESET | expand

Message

Cédric Le Goater April 3, 2018, 7:15 a.m. UTC
H_INT_RESET performs a reset of the Hypervisor internal interrupt
structures, removing all settings done with H_INT_SET_SOURCE_CONFIG
and H_INT_SET_QUEUE_CONFIG. This is most important for kdump and kexec
to be able to restart in a clean state.

First patch closes a window in the kexec sequence in which the
H_INT_RESET hcall can be run concurrently with other hcalls when CPUs
are brought down. The other patches wire up the reset hcall making
sure it supports H_LONG_BUSY_* returned by the Hypervisor.

Cédric Le Goater (4):
  powerpc/64/kexec: fix race in kexec when XIVE is shutdowned
  powerpc/xive: fix hcall H_INT_RESET to support long busy delays
  powerpc/xive: shutdown XIVE when kexec or kdump is performed
  powerpc/xive: prepare all hcalls to support long busy delays

 arch/powerpc/kernel/machine_kexec_64.c |  8 +--
 arch/powerpc/platforms/pseries/kexec.c |  7 ++-
 arch/powerpc/sysdev/xive/spapr.c       | 89 +++++++++++++++++++++++++++++-----
 3 files changed, 85 insertions(+), 19 deletions(-)

Comments

Cédric Le Goater April 30, 2018, 4:21 p.m. UTC | #1
On 04/03/2018 09:15 AM, Cédric Le Goater wrote:
> H_INT_RESET performs a reset of the Hypervisor internal interrupt
> structures, removing all settings done with H_INT_SET_SOURCE_CONFIG
> and H_INT_SET_QUEUE_CONFIG. This is most important for kdump and kexec
> to be able to restart in a clean state.
> 
> First patch closes a window in the kexec sequence in which the
> H_INT_RESET hcall can be run concurrently with other hcalls when CPUs
> are brought down. The other patches wire up the reset hcall making
> sure it supports H_LONG_BUSY_* returned by the Hypervisor.

Does anyone has some time to take a look ? 

Thanks,

C. 


> Cédric Le Goater (4):
>   powerpc/64/kexec: fix race in kexec when XIVE is shutdowned
>   powerpc/xive: fix hcall H_INT_RESET to support long busy delays
>   powerpc/xive: shutdown XIVE when kexec or kdump is performed
>   powerpc/xive: prepare all hcalls to support long busy delays
> 
>  arch/powerpc/kernel/machine_kexec_64.c |  8 +--
>  arch/powerpc/platforms/pseries/kexec.c |  7 ++-
>  arch/powerpc/sysdev/xive/spapr.c       | 89 +++++++++++++++++++++++++++++-----
>  3 files changed, 85 insertions(+), 19 deletions(-)
>