Page MenuHomeFreeBSD

bhyve nvme: Fix Set Features
ClosedPublic

Authored by chuck on Dec 19 2021, 4:17 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Sep 10, 10:28 PM
Unknown Object (File)
Thu, Sep 10, 6:23 PM
Unknown Object (File)
Tue, Sep 8, 7:39 AM
Unknown Object (File)
Sat, Sep 5, 8:41 AM
Unknown Object (File)
Sat, Sep 5, 6:20 AM
Unknown Object (File)
Sat, Sep 5, 5:36 AM
Unknown Object (File)
Thu, Sep 3, 5:55 PM
Unknown Object (File)
Thu, Sep 3, 5:19 PM

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.