Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F162586055
D44683.id136690.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D44683.id136690.diff
View Options
diff --git a/sbin/nvmecontrol/firmware.c b/sbin/nvmecontrol/firmware.c
--- a/sbin/nvmecontrol/firmware.c
+++ b/sbin/nvmecontrol/firmware.c
@@ -102,7 +102,8 @@
int has_fw = false;
read_logpage(fd, NVME_LOG_FIRMWARE_SLOT,
- NVME_GLOBAL_NAMESPACE_TAG, 0, 0, 0, &fw, sizeof(fw));
+ NVME_GLOBAL_NAMESPACE_TAG, 0, 0, 0, 0, 0, 0, 0,
+ &fw, sizeof(fw));
if (fw.revision[slot-1][0] != '\0')
has_fw = true;
diff --git a/sbin/nvmecontrol/logpage.c b/sbin/nvmecontrol/logpage.c
--- a/sbin/nvmecontrol/logpage.c
+++ b/sbin/nvmecontrol/logpage.c
@@ -190,7 +190,8 @@
void
read_logpage(int fd, uint8_t log_page, uint32_t nsid, uint8_t lsp,
- uint16_t lsi, uint8_t rae, void *payload, uint32_t payload_size)
+ uint16_t lsi, uint8_t rae, uint64_t lpo, uint8_t csi, uint8_t ot,
+ uint16_t uuid_index, void *payload, uint32_t payload_size)
{
struct nvme_pt_command pt;
u_int numd;
@@ -207,9 +208,12 @@
pt.cmd.cdw11 = htole32(
((uint32_t)lsi << 16) | /* LSI */
(numd >> 16)); /* NUMDU */
- pt.cmd.cdw12 = 0; /* LPOL */
- pt.cmd.cdw13 = 0; /* LPOU */
- pt.cmd.cdw14 = 0; /* UUID Index */
+ pt.cmd.cdw12 = htole32(lpo & 0xffffffff); /* LPOL */
+ pt.cmd.cdw13 = htole32(lpo >> 32); /* LPOU */
+ pt.cmd.cdw14 = htole32(
+ (csi << 24) | /* CSI */
+ (ot << 23) | /* OT */
+ uuid_index); /* UUID Index */
pt.buf = payload;
pt.len = payload_size;
pt.is_read = 1;
@@ -794,7 +798,8 @@
/* Read the log page */
buf = get_log_buffer(size);
- read_logpage(fd, opt.page, nsid, opt.lsp, opt.lsi, opt.rae, buf, size);
+ read_logpage(fd, opt.page, nsid, opt.lsp, opt.lsi, opt.rae,
+ 0, 0, 0, 0, buf, size);
print_fn(&cdata, buf, size);
close(fd);
diff --git a/sbin/nvmecontrol/nvmecontrol.h b/sbin/nvmecontrol/nvmecontrol.h
--- a/sbin/nvmecontrol/nvmecontrol.h
+++ b/sbin/nvmecontrol/nvmecontrol.h
@@ -84,7 +84,8 @@
void print_hex(void *data, uint32_t length);
void print_namespace(struct nvme_namespace_data *nsdata);
void read_logpage(int fd, uint8_t log_page, uint32_t nsid, uint8_t lsp,
- uint16_t lsi, uint8_t rae, void *payload, uint32_t payload_size);
+ uint16_t lsi, uint8_t rae, uint64_t lpo, uint8_t csi, uint8_t ot,
+ uint16_t uuid_index, void *payload, uint32_t payload_size);
void print_temp_C(uint16_t t);
void print_temp_K(uint16_t t);
void print_intel_add_smart(const struct nvme_controller_data *cdata __unused, void *buf, uint32_t size __unused);
diff --git a/sbin/nvmecontrol/sanitize.c b/sbin/nvmecontrol/sanitize.c
--- a/sbin/nvmecontrol/sanitize.c
+++ b/sbin/nvmecontrol/sanitize.c
@@ -182,7 +182,8 @@
wait:
read_logpage(fd, NVME_LOG_SANITIZE_STATUS,
- NVME_GLOBAL_NAMESPACE_TAG, 0, 0, 0, &ss, sizeof(ss));
+ NVME_GLOBAL_NAMESPACE_TAG, 0, 0, 0,
+ 0, 0, 0, 0, &ss, sizeof(ss));
switch (NVMEV(NVME_SS_PAGE_SSTAT_STATUS, ss.sstat)) {
case NVME_SS_PAGE_SSTAT_STATUS_NEVER:
printf("Never sanitized");
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Jul 15, 7:39 PM (11 h, 31 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35111562
Default Alt Text
D44683.id136690.diff (2 KB)
Attached To
Mode
D44683: nvmecontrol: Add nvme 2.0 fields to read_logpage
Attached
Detach File
Event Timeline
Log In to Comment