Page MenuHomeFreeBSD

nvmft: The in-kernel NVMe over Fabrics controller
ClosedPublic

Authored by jhb on Apr 9 2024, 11:04 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Nov 12, 3:39 AM
Unknown Object (File)
Sep 24 2024, 8:26 PM
Unknown Object (File)
Sep 24 2024, 7:34 PM
Unknown Object (File)
Sep 24 2024, 6:51 AM
Unknown Object (File)
Sep 23 2024, 8:36 PM
Unknown Object (File)
Sep 23 2024, 2:38 PM
Unknown Object (File)
Sep 23 2024, 5:41 AM
Unknown Object (File)
Sep 22 2024, 7:48 PM
Subscribers
None

Details

Summary

This is the server (target in SCSI terms) for NVMe over Fabrics.
Userland is responsible for accepting a new queue pair and receiving
the initial Connect command before handing the queue pair off via an
ioctl to this CTL frontend.

This frontend exposes CTL LUNs as NVMe namespaces to remote hosts.
Users can ask LUNS to CTL that can be shared via either iSCSI or
NVMeoF.

Sponsored by: Chelsio Communications

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 57017
Build 53905: arc lint + arc unit

Event Timeline

jhb requested review of this revision.Apr 9 2024, 11:04 PM
jhb created this revision.

Nothing bad stood out, but the size of this makes it hard to review carefully.

sys/dev/nvmf/controller/ctl_frontend_nvmf.c
128

For NDA the LUN == NSID. Does the mismatch matter in this context?

This revision is now accepted and ready to land.Apr 13 2024, 8:23 PM

This is indeed a large change, but it's not really feasible to split it up further. :(

sys/dev/nvmf/controller/ctl_frontend_nvmf.c
128

No. CTL LUNs start at 0, but NVMe namespaces start at 1, so I can't reuse CTL LUNs directly.

Switch to SPDX-only license blocks for C files

This revision now requires review to proceed.May 1 2024, 10:51 PM
This revision was not accepted when it landed; it landed in state Needs Review.May 3 2024, 12:17 AM
This revision was automatically updated to reflect the committed changes.