PCIe reset and inflight I/O
Daniel Ricketts
daniel.bmore.ricketts at gmail.com
Mon Nov 20 10:50:32 PST 2017
After a PCIe reset completes, can there be inflight I/O anywhere in
the NVM subsystem (e.g. lower-level device or firmware buffers)?
Section 7.3.2 of revision 1.3a of the NVMe specification states that a
PCIe reset triggers a NVMe controller level reset, after which the
following actions are performed:
- The controller stops processing any outstanding Admin or I/O commands.
- All I/O Submission Queues are deleted.
- All I/O Completion Queues are deleted.
If an I/O command is initiated on a controller prior to a controller
reset, is it possible for the command to complete anywhere in the NVM
subsystem after the controller reset?
In general, I'm trying to understand how deep a PCIe reset is for
fencing out inflight I/O.
Thanks,
Dan
More information about the Linux-nvme
mailing list