HomeFreeBSD

bhyve: base pci_nvme_ioreq size on advertised MDTS

Description

bhyve: base pci_nvme_ioreq size on advertised MDTS

NVMe controllers advertise their Max Data Transfer Size (MDTS) to limit
the number of page descriptors in an I/O request. Take advantage of this
and size the struct pci_nvme_ioreq accordingly.

Ensuring these values match both future-proofs the code and allows
removing some complexity which only exists to handle this possibility.

Tested by: Jason Tubnor
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D24891

Details

Provenance
chuckAuthored on
Differential Revision
D24891: bhyve: base pci_nvme_ioreq size on advertised MDTS
Parents
rS362756: bhyve: refactor NVMe I/O read/write
Branches
Unknown
Tags
Unknown