Page MenuHomeFreeBSD

bhyve nvme: Fix Set Features
ClosedPublic

Authored by chuck on Dec 19 2021, 4:17 PM.
Tags
None
Referenced Files
F168884594: D33571.id102094.diff
Sun, Aug 30, 2:51 PM
F168803087: D33571.id100300.diff
Sun, Aug 30, 5:56 AM
Unknown Object (File)
Fri, Aug 28, 10:05 AM
Unknown Object (File)
Wed, Aug 26, 9:29 PM
Unknown Object (File)
Wed, Aug 26, 3:49 AM
Unknown Object (File)
Tue, Aug 25, 9:24 AM
Unknown Object (File)
Tue, Aug 25, 7:57 AM
Unknown Object (File)
Tue, Aug 25, 7:15 AM

Details

Summary

Be more conservative and only support the Features mandatory for an I/O
Controller.

Avoids a "hang" in UNH test 1.2.10 associated with Predictable Latency
Mode Configuration and Host Behavior Support features.

Tested by:
MFC after: 2 weeks

Diff Detail

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

Event Timeline

chuck requested review of this revision.Dec 19 2021, 4:17 PM

nvme_feature_obj has a cdw11 field to store values for set command. but some features are not only take one uint32_t input, but also other data types. such as timestamp, lba range type etc.
for further implements, can we have a void * here? let each feature decide what data structure it should be.

struct nvme_feature_obj {
	void * data;
	nvme_feature_cb	set;
	nvme_feature_cb	get;
	bool namespace_specific;
};
This revision was not accepted when it landed; it landed in state Needs Review.Jan 29 2022, 11:17 PM
This revision was automatically updated to reflect the committed changes.