Revision bd91b56cb3b27492963caeb5fccefe20a986ca8d authored by Thomas Tai on 26 July 2018, 17:13:04 UTC, committed by Bjorn Helgaas on 26 July 2018, 17:13:04 UTC
When an fatal error is received by a non-bridge device, the device is removed, and pci_stop_and_remove_bus_device() deallocates the device structure. The freed device structure is used by subsequent code to send uevents and print messages. Hold a reference on the device until we're finished using it. This is not an ideal fix because pcie_do_fatal_recovery() should not use the device at all after removing it, but that's too big a project for right now. Fixes: 7e9084b36740 ("PCI/AER: Handle ERR_FATAL with removal and re-enumeration of devices") Signed-off-by: Thomas Tai <thomas.tai@oracle.com> [bhelgaas: changelog, reduce get/put coverage] Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
1 parent 270ed73
File | Mode | Size |
---|---|---|
coccinelle.rst | -rw-r--r-- | 15.4 KB |
conf.py | -rw-r--r-- | 223 bytes |
gcov.rst | -rw-r--r-- | 7.5 KB |
gdb-kernel-debugging.rst | -rw-r--r-- | 6.1 KB |
index.rst | -rw-r--r-- | 614 bytes |
kasan.rst | -rw-r--r-- | 8.4 KB |
kcov.rst | -rw-r--r-- | 6.4 KB |
kgdb.rst | -rw-r--r-- | 31.6 KB |
kmemleak.rst | -rw-r--r-- | 9.0 KB |
kselftest.rst | -rw-r--r-- | 5.7 KB |
sparse.rst | -rw-r--r-- | 3.6 KB |
ubsan.rst | -rw-r--r-- | 3.1 KB |
Computing file changes ...