diff options
author | Simon Guo <wei.guo.simon@gmail.com> | 2018-03-07 09:46:04 +0100 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2018-03-13 05:50:32 +0100 |
commit | 97c6f25d5828b497e3e802b1f7c70187c88df623 (patch) | |
tree | 45f54aeb912c410b93419955aeaa18e97da89517 /drivers/pci/hotplug | |
parent | powerpc/powernv/mce: Don't silently restart the machine (diff) | |
download | linux-97c6f25d5828b497e3e802b1f7c70187c88df623.tar.xz linux-97c6f25d5828b497e3e802b1f7c70187c88df623.zip |
PCI/hotplug: ppc: correct a php_slot usage after free
In pnv_php_unregister_one(), pnv_php_put_slot() might kfree
php_slot structure. But there is pci_hp_deregister() after
that with php_slot reference.
This patch moves pnv_php_put_slot() to the end of function.
Signed-off-by: Simon Guo <wei.guo.simon@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'drivers/pci/hotplug')
-rw-r--r-- | drivers/pci/hotplug/pnv_php.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pci/hotplug/pnv_php.c b/drivers/pci/hotplug/pnv_php.c index 23da3046f160..d44100687dfe 100644 --- a/drivers/pci/hotplug/pnv_php.c +++ b/drivers/pci/hotplug/pnv_php.c @@ -919,8 +919,8 @@ static void pnv_php_unregister_one(struct device_node *dn) return; php_slot->state = PNV_PHP_STATE_OFFLINE; - pnv_php_put_slot(php_slot); pci_hp_deregister(&php_slot->slot); + pnv_php_put_slot(php_slot); } static void pnv_php_unregister(struct device_node *dn) |