FAILED: patch "[PATCH] PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it" failed to apply to 4.14-stable tree
Subsystems (4)
[email protected]
maintainerThe patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 533ca1feed98b0bf024779a14760694c7cb4d431 Mon Sep 17 00:00:00 2001
From: Dexuan Cui <[email protected]>
Date: Fri, 2 Aug 2019 22:50:20 +0000
Subject: [PATCH] PCI: hv: Avoid use of hv_pci_dev->pci_slot after freeing it
The slot must be removed before the pci_dev is removed, otherwise a panic can happen due to use-after-free.
drivers/pci/controller/pci-hyperv.c +1 -1
@@ -2701,8 +2701,8 @@ static int hv_pci_remove(struct hv_device *hdev)/* Remove the bus from PCI's point of view. */ pci_lock_rescan_remove ();pci_stop_root_bus (hbus->pci_bus); -pci_remove_root_bus (hbus->pci_bus);hv_pci_remove_slots (hbus); +pci_remove_root_bus (hbus->pci_bus);pci_unlock_rescan_remove (); hbus->state = hv_pcibus_removed; }
Dexuan Cui
maintainerQuoted 40 lines
From: [email protected] <[email protected]>
Sent: Tuesday, October 8, 2019 10:19 AM
To: Dexuan Cui <[email protected]>; [email protected]
Cc: [email protected]
Subject: FAILED: patch "[PATCH] PCI: hv: Avoid use ofhv_pci_dev->pci_slotafter freeing it" failed to apply to 4.14-stable treeThe patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From
533ca1feed98b0bf024779a14760694c7cb4d431Mon Sep 17 00:00:00 2001
From: Dexuan Cui <[email protected]>
Date: Fri, 2 Aug 2019 22:50:20 +0000
Subject: [PATCH] PCI: hv: Avoid use ofhv_pci_dev->pci_slotafter freeing itThe slot must be removed before the
pci_devis removed, otherwise a panic can happen due to use-after-free.Fixes 15becc2b56c6 ("PCI: hv: Add hv_pci_remove_slots() when we unload thedriver")
Signed-off-by Dexuan Cui <[email protected]>Signed-off-by Lorenzo Pieralisi <[email protected]>drivers/pci/controller/pci-hyperv.c +0
-0
drivers/pci/controller/pci-hyperv.c static int hv_pci_remove(struct hv_device *hdev) · line 2708
Quoted 9 lines
drivers/pci/controller/pci-hyperv.c +1
-1@@ -2701,8 +2701,8 @@ static int hv_pci_remove(struct hv_device *hdev)/* Remove the bus from PCI's point of view. */ pci_lock_rescan_remove ();pci_stop_root_bus (hbus->pci_bus); -pci_remove_root_bus (hbus->pci_bus);hv_pci_remove_slots (hbus); +pci_remove_root_bus (hbus->pci_bus);pci_unlock_rescan_remove (); hbus->state = hv_pcibus_removed; }
It looks this mail is also generated in error, because the commit 533ca1feed98b0bf024779a14760694c7cb4d431 has already been in v4.14.148.
Thanks,
Dexuan