opnsense-src/sys/dev/nvmf
John Baldwin 6751f65e6a nvmf: Defer the post-sync shutdown handler to SHUTDOWN_PRI_LAST
nda(4) has its own shutdown handler that runs at SHUTDOWN_PRI_DEFAULT
that calls ndaflush() that could run after the nvmf handler.  Instead,
give a the flush a chance to run before the graceful shutdown of the
controller.

While here, be a bit more defensive in the post-sync case and shutdown
the consumers (sim and /dev/nvmeXnY devices) before destroying the
queue pairs so that if any requests are submitted after the post-sync
handler they fail gracefully instead of trying to use a destroyed
queue pair.

Reported by:	Sony Arpita Das <sonyarpitad@chelsio.com>
Sponsored by:	Chelsio Communications
2025-01-13 15:04:29 -05:00
..
controller nvmf: Switch several ioctls to using nvlists 2024-12-30 13:52:21 -05:00
host nvmf: Defer the post-sync shutdown handler to SHUTDOWN_PRI_LAST 2025-01-13 15:04:29 -05:00
nvmf.h nvmf: Switch several ioctls to using nvlists 2024-12-30 13:52:21 -05:00
nvmf_proto.h nvmf: Add explicit alignment for struct nvmf_fabric_cmd 2024-05-06 15:19:39 -07:00
nvmf_tcp.c nvmf: Switch several ioctls to using nvlists 2024-12-30 13:52:21 -05:00
nvmf_tcp.h nvmf: fix build with __assert_unreachable() addition to userland 2025-01-12 18:41:37 -06:00
nvmf_transport.c nvmf: Switch several ioctls to using nvlists 2024-12-30 13:52:21 -05:00
nvmf_transport.h nvmf: Switch several ioctls to using nvlists 2024-12-30 13:52:21 -05:00
nvmf_transport_internal.h nvmf: Switch several ioctls to using nvlists 2024-12-30 13:52:21 -05:00