Re: [PATCH 1/2] pci/hotplug/pnv_php: Fix hotplug driver crash on Powernv
From: Shawn Anastasio
Date: Thu Jun 27 2024 - 13:13:06 EST
Hi Krishna,
On 5/9/24 7:05 AM, Krishna Kumar wrote:
> Description of the problem: The hotplug driver for powerpc
> (pci/hotplug/pnv_php.c) gives kernel crash when we try to
> hot-unplug/disable the PCIe switch/bridge from the PHB.
>
>
> Root Cause of Crash: The crash is due to the reason that, though the msi
> data structure has been released during disable/hot-unplug path and it
> has been assigned with NULL, still during unregistartion the code was
> again trying to explicitly disable the msi which causes the Null pointer
> dereference and kernel crash.
>
>
> Proposed Fix : The fix is to correct the check during unregistration path
> so that the code should not try to invoke pci_disable_msi/msix() if its
> data structure is already freed.
>
>
> Signed-off-by: Krishna Kumar <krishnak@xxxxxxxxxxxxx>
I've tested this on a POWER9 box and can confirm that it fixes the panics
when hotplugging PCIe bridges.
Tested-by: Shawn Anastasio <sanastasio@xxxxxxxxxxxxxxxxxxxxx>
Thanks,
Shawn