]> Pileus Git - ~andy/linux/blobdiff - drivers/pci/pcie/aer/aerdrv.h
Merge tag 'disintegrate-cris-20121009' of git://git.infradead.org/users/dhowells...
[~andy/linux] / drivers / pci / pcie / aer / aerdrv.h
index 94a7598eb262fec103cb9611ba8612e452d1de7b..22f840f4dda1065eb97b54da307b5f6d2dda0c5a 100644 (file)
@@ -87,6 +87,9 @@ struct aer_broadcast_data {
 static inline pci_ers_result_t merge_result(enum pci_ers_result orig,
                enum pci_ers_result new)
 {
+       if (new == PCI_ERS_RESULT_NO_AER_DRIVER)
+               return PCI_ERS_RESULT_NO_AER_DRIVER;
+
        if (new == PCI_ERS_RESULT_NONE)
                return orig;
 
@@ -97,7 +100,7 @@ static inline pci_ers_result_t merge_result(enum pci_ers_result orig,
                break;
        case PCI_ERS_RESULT_DISCONNECT:
                if (new == PCI_ERS_RESULT_NEED_RESET)
-                       orig = new;
+                       orig = PCI_ERS_RESULT_NEED_RESET;
                break;
        default:
                break;