Page MenuHomeFreeBSD

nvme: Add namespace mgmt and attachment support.
ClosedPublic

Authored by mffbsdw_gmail.com on Jun 28 2017, 8:01 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Apr 28, 1:22 PM
Unknown Object (File)
Sat, Apr 27, 7:42 AM
Unknown Object (File)
Feb 4 2024, 4:21 AM
Unknown Object (File)
Jan 18 2024, 7:27 AM
Unknown Object (File)
Dec 20 2023, 5:47 AM
Unknown Object (File)
Oct 10 2023, 11:11 PM
Unknown Object (File)
Oct 10 2023, 6:07 AM
Unknown Object (File)
Aug 12 2023, 9:13 PM
Subscribers
None

Details

Summary

Add nscreate/nsdelete and nsattach/nsdetach to nvmecontrol
and support in nvme driver for same.

Test Plan

Tested nscreate/nsattach partition, mount, write/read and
nsdetach/nsdelete on HGST 4500 and Samsung PM963 nvme drives supporting
namespace and attachement command sets. Ensure existing nvme drives not
supporting namespace (Intel 750) continue to work as expected.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 10178
Build 10599: arc lint + arc unit

Event Timeline

First round of suggestions. I haven't had a chance to delve deeply into these changes, so this is just what jumped out.

sbin/nvmecontrol/identify.c
69

I've pushed this upstream.

sys/dev/nvme/nvme_ctrlr.c
1006–1017

Rather than a special case in sniffing the passthrough commands, why not register async namespace notifications and use those instead and get rid of all this special case code.

sys/dev/nvme/nvme_sim.c
185

Why wasn't it causing problems before? I don't understand.

262

I've upstreamed something better here.

266

This change is gratuitous.

278

This change is gratuitous.

280

Is this where what causes the uninitialized namespace issue?

This revision was not accepted when it landed; it landed in state Needs Review.May 5 2018, 8:08 PM
This revision was automatically updated to reflect the committed changes.