Page MenuHomeFreeBSD

nvme: limit visible namespaces on Apple S3X
AcceptedPublic

Authored by guest-seuros on Fri, Aug 14, 3:48 PM.
Tags
None
Referenced Files
F167167440: D58844.diff
Wed, Aug 19, 3:17 PM
F167120777: D58844.diff
Wed, Aug 19, 6:40 AM
Unknown Object (File)
Tue, Aug 18, 8:41 PM
Unknown Object (File)
Tue, Aug 18, 11:27 AM
Unknown Object (File)
Sun, Aug 16, 5:05 AM
Unknown Object (File)
Sun, Aug 16, 4:08 AM
Unknown Object (File)
Sat, Aug 15, 9:03 AM
Unknown Object (File)
Fri, Aug 14, 7:09 PM
Subscribers

Details

Reviewers
imp
adrian
ngie
Summary

The Apple S3X controller exposes internal namespaces beyond NSID 1
that aren't meant to be visible to the OS. Added QUIRK_APPLE_S3X_NS1_ONLY
and nvme_ctrlr_num_namespaces()/nvme_ctrlr_nsid_visible() helpers, and
route namespace construction, notification, and AER namespace-changed
handling through them instead of a raw cdata.nn count.

MFC after: 1 week

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 75590
Build 72473: arc lint + arc unit

Event Timeline

This looks good.
Sometimes I might have split the new quirk from the new behavior, but this case seems to be fine because (a) splitting it wouldn't help bisectability and (b) splitting wouldn't make it easier to review.

This revision is now accepted and ready to land.Fri, Aug 14, 8:41 PM

I hope to get this code removed once we have MQS.

Disk Speed is ok, but it has the capability to be faster.