Page MenuHomeFreeBSD

D34866.diff
No OneTemporary

D34866.diff

diff --git a/sys/dev/nvme/nvme_ns.c b/sys/dev/nvme/nvme_ns.c
--- a/sys/dev/nvme/nvme_ns.c
+++ b/sys/dev/nvme/nvme_ns.c
@@ -567,14 +567,16 @@
}
/*
- * Older Intel devices advertise in vendor specific space an alignment
- * that improves performance. If present use for the stripe size. NVMe
- * 1.3 standardized this as NOIOB, and newer Intel drives use that.
+ * Older Intel devices (like the PC35xxx and P45xx series) advertise in
+ * vendor specific space an alignment that improves performance. If
+ * present use for the stripe size. NVMe 1.3 standardized this as
+ * NOIOB, and newer Intel drives use that.
*/
if ((ctrlr->quirks & QUIRK_INTEL_ALIGNMENT) != 0) {
if (ctrlr->cdata.vs[3] != 0)
ns->boundary =
- (1 << ctrlr->cdata.vs[3]) * ctrlr->min_page_size;
+ 1 << (ctrlr->cdata.vs[3] + NVME_MPS_SHIFT +
+ NVME_CAP_HI_MPSMIN(ctrlr->cap_hi));
else
ns->boundary = 0;
} else {

File Metadata

Mime Type
text/plain
Expires
Thu, Jan 16, 12:18 AM (17 h, 54 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
15817774
Default Alt Text
D34866.diff (933 B)

Event Timeline