diff options
-rw-r--r-- | arch/s390/pci/pci_event.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/s390/pci/pci_event.c b/arch/s390/pci/pci_event.c index 65ea105f68a1..7fc4c2c5708c 100644 --- a/arch/s390/pci/pci_event.c +++ b/arch/s390/pci/pci_event.c | |||
@@ -102,8 +102,12 @@ static void __zpci_event_availability(struct zpci_ccdf_avail *ccdf) | |||
102 | 102 | ||
103 | break; | 103 | break; |
104 | case 0x0304: /* Configured -> Standby */ | 104 | case 0x0304: /* Configured -> Standby */ |
105 | if (pdev) | 105 | if (pdev) { |
106 | /* Give the driver a hint that the function is | ||
107 | * already unusable. */ | ||
108 | pdev->error_state = pci_channel_io_perm_failure; | ||
106 | pci_stop_and_remove_bus_device(pdev); | 109 | pci_stop_and_remove_bus_device(pdev); |
110 | } | ||
107 | 111 | ||
108 | zpci_disable_device(zdev); | 112 | zpci_disable_device(zdev); |
109 | zdev->state = ZPCI_FN_STATE_STANDBY; | 113 | zdev->state = ZPCI_FN_STATE_STANDBY; |