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 |
---|---|---|
Makefile | -rw-r--r-- | 970 bytes |
hv_fcopy_daemon.c | -rw-r--r-- | 5.4 KB |
hv_get_dhcp_info.sh | -rwxr-xr-x | 930 bytes |
hv_get_dns_info.sh | -rwxr-xr-x | 622 bytes |
hv_kvp_daemon.c | -rw-r--r-- | 35.2 KB |
hv_set_ifconfig.sh | -rwxr-xr-x | 1.8 KB |
hv_vss_daemon.c | -rw-r--r-- | 6.3 KB |
lsvmbus | -rw-r--r-- | 3.5 KB |
Computing file changes ...