Page MenuHomeFreeBSD

nvmec: Nvme controller generated events
Needs ReviewPublic

Authored by imp on Jul 17 2025, 7:51 PM.
Tags
None
Referenced Files
F133011866: D51386.id.diff
Wed, Oct 22, 1:30 AM
F133011862: D51386.id158693.diff
Wed, Oct 22, 1:30 AM
F132994853: D51386.diff
Tue, Oct 21, 10:05 PM
Unknown Object (File)
Tue, Oct 21, 1:57 PM
Unknown Object (File)
Sun, Oct 12, 6:34 PM
Unknown Object (File)
Wed, Oct 8, 8:58 PM
Unknown Object (File)
Fri, Oct 3, 5:02 PM
Unknown Object (File)
Thu, Oct 2, 12:56 AM
Subscribers

Details

Summary

Interface for the nvme driver notifying its children of different
events: async notifications, namespace events and device failure. These
aren't yet connected.

Sponsored by: Netflix

Diff Detail

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

Event Timeline

sys/dev/nvme/nvmec_if.m
9

Just "nvme"?

18

I would perhaps name these as ns_added, ns_removed, ns_changed similar to BUS_CHILD_DELETED.

26

We can afford to spell out "remove" I think.

42

controller_failed?

49

handle_aen?

sys/dev/nvme/nvmec_if.m
9

I chose nvmec to mirror the pcib vs pci separation. But I've never known quite how to differentiate the interfaces that children need to implement that this driver will call from the interfaces I implement for my children to call. Usually it's just one or the other, but I was anticipating needing to have upcalls as well as downcalls (though I couldn't tell you which is which in newbus speak).

18

That's not a bad idea. I hacked through these interfaces in a hurry.

42

Likely better. This name is the same as we had before with the 'consumer' thing.

49

Same.