]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
s390/pci: Remove redundant bus removal and disable from zpci_release_device()
authorNiklas Schnelle <schnelle@linux.ibm.com>
Thu, 22 May 2025 12:13:12 +0000 (14:13 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Jun 2025 10:11:14 +0000 (11:11 +0100)
commit d76f9633296785343d45f85199f4138cb724b6d2 upstream.

Remove zpci_bus_remove_device() and zpci_disable_device() calls from
zpci_release_device(). These calls were done when the device
transitioned into the ZPCI_FN_STATE_STANDBY state which is guaranteed to
happen before it enters the ZPCI_FN_STATE_RESERVED state. When
zpci_release_device() is called the device is known to be in the
ZPCI_FN_STATE_RESERVED state which is also checked by a WARN_ON().

Cc: stable@vger.kernel.org
Fixes: a46044a92add ("s390/pci: fix zpci_zdev_put() on reserve")
Reviewed-by: Gerd Bayer <gbayer@linux.ibm.com>
Reviewed-by: Julian Ruess <julianr@linux.ibm.com>
Tested-by: Gerd Bayer <gbayer@linux.ibm.com>
Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/s390/pci/pci.c

index 88f72745fa59e16df26b1563de27594aac954a78..89451c19da7c8555182c319d078c85a42df638c3 100644 (file)
@@ -943,12 +943,6 @@ void zpci_release_device(struct kref *kref)
 
        WARN_ON(zdev->state != ZPCI_FN_STATE_RESERVED);
 
-       if (zdev->zbus->bus)
-               zpci_bus_remove_device(zdev, false);
-
-       if (zdev_enabled(zdev))
-               zpci_disable_device(zdev);
-
        if (zdev->has_hp_slot)
                zpci_exit_slot(zdev);