Page MenuHomeFreeBSD

nvmf: Switch several ioctls to using nvlists
ClosedPublic

Authored by jhb on Sat, Dec 28, 9:15 PM.
Tags
None
Referenced Files
F106497761: D48230.diff
Tue, Dec 31, 6:24 PM
Unknown Object (File)
Mon, Dec 30, 8:15 PM
Unknown Object (File)
Sat, Dec 28, 10:35 PM

Details

Summary

For requests that handoff queues from userspace to the kernel as well
as the request to fetch reconnect parameters from the kernel, switch
from using flat structures to nvlists. In particular, this will
permit adding support for additional transports in the future without
breaking the ABI of the structures.

Note that this is an ABI break for the ioctls used by nvmf(4) and
nvmft(4). Since this is only present in main I did not bother
implementing compatability shims.

Inspired by: imp (suggestion on a different review)
Sponsored by: Chelsio Communications

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jhb requested review of this revision.Sat, Dec 28, 9:15 PM

So I like this in general. And the few places that I checked the old/new code does the right thing as far as I Can tell by looking at it statically. I didn't audit everything though.
But that's likely OK if this passes whatever test-suite we have, imho.

This revision is now accepted and ready to land.Sat, Dec 28, 9:29 PM

The testing I did is to run a FreeBSD Fabrics controller on one test machine and the fabrics host on another and verified that I could still establish an association, do I/O, fail a connection, and then reconnect without blowing up anywhere.

This revision was automatically updated to reflect the committed changes.