opnsense-src/sys/dev/nvme
Warner Losh dc95228d98 nvme: Fix hotplug on one of the amazon platforms
Amazon EC2 m7i cloud instances use PCI hotplug rather than ACPI
hotplug. The card is removed and detach is called to remove the drive
from the system. The hardware is no longer present at this point, but
the bridge doesn't translate the now-missing hardware reads to all ff's
leading us to conclude the hardware is there and we need to do a proper
shutdown of it. Fix this oversight by asking the bridge if the device is
still present as well. We need both tests since some systems one cane
remove the card w/o a hotplug event and we want to fail-safe in those
cases.

Convert gone to a bool while I'm here and update a comment about
shutting down the controller and why that's important.

Tested by: cperciva
Sponsored by: Netflix
2025-02-25 09:36:53 -07:00
..
nvme.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
nvme.h nvme/nvmf: Add NVME_GET_CONTROLLER_DATA ioctl to fetch cached cdata 2025-01-31 15:46:49 -05:00
nvme_ahci.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
nvme_ctrlr.c nvme: Fix hotplug on one of the amazon platforms 2025-02-25 09:36:53 -07:00
nvme_ctrlr_cmd.c nvme: Pass malloc flags to request allocation functions 2024-11-09 17:34:12 +00:00
nvme_linux.h nvme: Add Linux copatible ioctls 2024-06-14 16:40:08 -06:00
nvme_ns.c nvme: Add Linux copatible ioctls 2024-06-14 16:40:08 -06:00
nvme_ns_cmd.c nvme: Pass malloc flags to request allocation functions 2024-11-09 17:34:12 +00:00
nvme_pci.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
nvme_private.h nvme: Pass malloc flags to request allocation functions 2024-11-09 17:34:12 +00:00
nvme_qpair.c nvme: Separate total failures from I/O failures 2024-08-15 21:31:20 -06:00
nvme_sim.c nvme: Pass malloc flags to request allocation functions 2024-11-09 17:34:12 +00:00
nvme_sysctl.c nvme: Rename the per-I/O queue sysctl device nodes 2024-11-02 09:53:28 -04:00
nvme_test.c Reduce reliance on sys/sysproto.h pollution 2024-04-15 21:35:40 +01:00
nvme_util.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00