Page MenuHomeFreeBSD

bhyve: refactor NVMe IO command handling
AcceptedPublic

Authored by chuck on Mon, May 18, 1:41 PM.

Details

Reviewers
jhb
imp
Group Reviewers
bhyve
Summary

This refactors the NVMe I/O command processing function to make adding
new commands easier. The main change is to move command specific
processing (i.e. Read/Write) to separate functions for each NVMe I/O
command and leave the common per-command processing in the existing
pci_nvme_handle_io_cmd() function.

While here, add checks for some common errors (invalid Namespace ID,
invalid opcode, LBA out of range).

Add myself to the Copyright holders

Test Plan

Ran fio and proprietary storage validation tool in a Linux guest

Diff Detail

Repository
rS FreeBSD src repository
Lint
Lint Skipped
Unit
Unit Tests Skipped
Build Status
Buildable 31149

Event Timeline

chuck created this revision.Mon, May 18, 1:41 PM
chuck requested review of this revision.Mon, May 18, 1:41 PM
imp accepted this revision.Mon, May 18, 8:42 PM
This revision is now accepted and ready to land.Mon, May 18, 8:42 PM