Page MenuHomeFreeBSD

D31001.id91671.diff
No OneTemporary

D31001.id91671.diff

Index: sys/dev/nvme/nvme.h
===================================================================
--- sys/dev/nvme/nvme.h
+++ sys/dev/nvme/nvme.h
@@ -612,7 +612,7 @@
uint32_t cdw13; /* command-specific */
uint32_t cdw14; /* command-specific */
uint32_t cdw15; /* command-specific */
-} __packed;
+};
_Static_assert(sizeof(struct nvme_command) == 16 * 4, "bad size for nvme_command");
@@ -630,7 +630,7 @@
/* dword 3 */
uint16_t cid; /* command identifier */
uint16_t status;
-} __packed;
+} __aligned(8); /* makes riscv64 generate better inner loop code */
_Static_assert(sizeof(struct nvme_completion) == 4 * 4, "bad size for nvme_completion");
@@ -638,7 +638,7 @@
uint32_t attributes;
uint32_t length;
uint64_t starting_lba;
-} __packed;
+};
/* Largest DSM Trim that can be done */
#define NVME_MAX_DSM_TRIM 4096

File Metadata

Mime Type
text/plain
Expires
Fri, Oct 10, 10:21 AM (20 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23527612
Default Alt Text
D31001.id91671.diff (850 B)

Event Timeline