Project

General

Profile

Actions

Feature #16427

closed

want libnvme support for supported command and log page logs

Added by Robert Mustacchi 2 months ago. Updated about 2 months ago.

Status:
Closed
Priority:
Normal
Category:
lib - userland libraries
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
External Bug:

Description

NVMe 1.2 added the supported commands and effects log page. NVMe 2.0 added support for the Supported Log Pages log page. This plumbs up initial support through libnvme for both of these. Pretty printing will come at a later time.

Actions #1

Updated by Electric Monk 2 months ago

  • Gerrit CR set to 3388
Actions #2

Updated by Robert Mustacchi about 2 months ago

I did two different sets of testing here: manual with nvmeadm and then the unit tests. First here's the manual testing which shows getting these log pages on devices that both support and don't support these logs:

rm@remus ~ $ pfexec nvmeadm list nvme17,nvme18,nvme22,nvme15
nvme17: model: INTEL SSDPE2ME800G4, serial: CVMD7392007D800VGN, FW rev: 8DV10171, NVMe v1.0
  nvme17/1 (c28t1d0): Size = 745.21 GB, Capacity = 745.21 GB, Used = 745.21 GB
nvme18: model: SAMSUNG MZ1LW960HMJP-00003, serial: S2X6NX0M200693, FW rev: CXV8601Q, NVMe v1.2, Capacity = 915715 MB
  nvme18/1 (c30t1d0): Size = 894.25 GB, Capacity = 894.25 GB, Used = 159.85 GB
nvme22: model: MTFDKCC960TGP-1BK1JABYY, serial: 4223101AEE77, FW rev: E3MQ000, NVMe v2.0, Capacity = 915715 MB
  nvme22/1 (c33t00A07501443515C6d0): Size = 894.25 GB, Capacity = 894.25 GB, Used = 0 B
nvme15: model: WUS4C6432DSP3X3, serial: A068F690, FW rev: R2210010, NVMe v1.3, Capacity = 3052360 MB
  nvme15/1 (c9t0014EE81000AF434d0): Size = 2.91 TB, Capacity = 2.91 TB, Used = 2.91 TB
rm@remus ~ $ pfexec nvmeadm list-logpages -a nvme17,nvme18,nvme22,nvme15 cmdeff suplog
DEVICE  NAME              SCOPE         IMPL  FIELDS    DESC
nvme17  suplog            controller    no    --        Supported Log Pages
nvme17  cmdeff            controller    no    --        commands supported and effects
nvme18  suplog            controller    no    --        Supported Log Pages
nvme18  cmdeff            controller    yes   --        commands supported and effects
nvme22  suplog            controller    yes   --        Supported Log Pages
nvme22  cmdeff            controller    yes   --        commands supported and effects
nvme15  suplog            controller    no    --        Supported Log Pages
nvme15  cmdeff            controller    yes   --        commands supported and effects
rm@remus ~ $ pfexec nvmeadm get-logpage nvme17 cmdeff
nvmeadm: could not initialize log request for cmdeff: cannot create log request for log cmdeff (CSI/LID 0x0/0x5) because it is not supported by the device: NVME_ERR_LOG_UNSUP_BY_DEV (libnvme: 0x23, sys: 0)
rm@remus ~ $ pfexec nvmeadm get-logpage nvme18 cmdeff
nvme18: commands supported and effects (cmdeff)
             0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f   0123456789abcdef
0x000000  | 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 | ................
0x000010  | 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 | ................
0x000020  | 01 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 | ................
0x000030  | 01 00 00 00 05 00 02 00 00 00 00 00 00 00 00 00 | ................
0x000040  | 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000050  | 00 00 00 00 09 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000060  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000070  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000080  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000090  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000100  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000110  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000120  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000130  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000140  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000150  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000160  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000170  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000180  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000190  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000200  | 03 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000210  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000220  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000230  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000240  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000250  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000260  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000270  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000280  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000290  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000300  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000310  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000320  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000330  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000340  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000350  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000360  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000370  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000380  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000390  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000400  | 01 00 01 00 03 00 00 00 01 00 00 00 00 00 00 00 | ................
0x000410  | 03 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000420  | 03 00 00 00 03 00 01 00 00 00 00 00 00 00 00 00 | ................
0x000430  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000440  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000450  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000460  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000470  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000480  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000490  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0004a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0004b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0004c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0004d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0004e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0004f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000500  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000510  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000520  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000530  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000540  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000550  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000560  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000570  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000580  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000590  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0005a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0005b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0005c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0005d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0005e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0005f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000600  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000610  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000620  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000630  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000640  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000650  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000660  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000670  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000680  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000690  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0006a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0006b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0006c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0006d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0006e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0006f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000700  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000710  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000720  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000730  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000740  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000750  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000760  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000770  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000780  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000790  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0007a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0007b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0007c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0007d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0007e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0007f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000800  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000810  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000820  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000830  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000840  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000850  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000860  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000870  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000880  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000890  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0008a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0008b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0008c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0008d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0008e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0008f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000900  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000910  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000920  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000930  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000940  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000950  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000960  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000970  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000980  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000990  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0009a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0009b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0009c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0009d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0009e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0009f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a00  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a10  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a20  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a30  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a40  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a50  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a60  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a70  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a80  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000a90  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000aa0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ab0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ac0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ad0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ae0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000af0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b00  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b10  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b20  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b30  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b40  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b50  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b60  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b70  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b80  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000b90  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ba0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000bb0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000bc0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000bd0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000be0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000bf0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c00  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c10  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c20  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c30  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c40  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c50  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c60  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c70  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c80  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000c90  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ca0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000cb0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000cc0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000cd0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ce0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000cf0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d00  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d10  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d20  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d30  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d40  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d50  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d60  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d70  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d80  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000d90  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000da0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000db0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000dc0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000dd0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000de0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000df0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e00  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e10  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e20  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e30  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e40  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e50  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e60  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e70  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e80  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000e90  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ea0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000eb0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ec0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ed0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ee0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ef0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f00  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f10  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f20  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f30  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f40  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f50  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f60  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f70  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f80  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000f90  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000fa0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000fb0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000fc0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000fd0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000fe0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000ff0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
rm@remus ~ $ pfexec nvmeadm get-logpage nvme18 suplog
nvmeadm: could not initialize log request for suplog: cannot create log request for log suplog (CSI/LID 0x0/0x0) because it is not supported by the device: NVME_ERR_LOG_UNSUP_BY_DEV (libnvme: 0x23, sys: 0)
rm@remus ~ $ pfexec nvmeadm get-logpage nvme22 suplog
nvme22: Supported Log Pages (suplog)
             0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f   0123456789abcdef
0x000000  | 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 | ................
0x000010  | 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 | ................
0x000020  | 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000030  | 00 00 00 00 01 00 01 00 00 00 00 00 01 00 00 00 | ................
0x000040  | 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 | ................
0x000050  | 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000060  | 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000070  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000080  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000090  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0000f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000100  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000110  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000120  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000130  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000140  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000150  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000160  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000170  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000180  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000190  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0001f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000200  | 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000210  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000220  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000230  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000240  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000250  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000260  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000270  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000280  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000290  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002a0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002b0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002e0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0002f0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000300  | 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 | ................
0x000310  | 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000320  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000330  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000340  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000350  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000360  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000370  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x000380  | 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 | ................
0x000390  | 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003a0  | 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 | ................
0x0003b0  | 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003c0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003d0  | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
0x0003e0  | 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 | ................
0x0003f0  | 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 | ................

Here are the unit test results as part of the test suite and then on its own:

rm@remus ~ $ /opt/nvme-tests/bin/unit 
Test: /opt/nvme-tests/tests/unit/feature.32 (run as rm)           [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/feature.64 (run as rm)           [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/firmware.32 (run as rm)          [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/firmware.64 (run as rm)          [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/format.32 (run as rm)            [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/format.64 (run as rm)            [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/identify.32 (run as rm)          [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/identify.64 (run as rm)          [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/logs.32 (run as rm)              [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/logs.64 (run as rm)              [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/version.32 (run as rm)           [00:00] [PASS]
Test: /opt/nvme-tests/tests/unit/vuc.64 (run as rm)               [00:00] [PASS]

Results Summary
PASS      12

Running Time:   00:00:00
Percent passed: 100.0%
Log directory:  /var/tmp/test_results/20240405T195942
rm@remus ~ $ /opt/nvme-tests/tests/unit/logs.64
TEST PASSED: invalid lid value (1): got correct return value
TEST PASSED: invalid lid value (1): error buffer properly formed
TEST PASSED: invalid lid value (2): got correct return value
TEST PASSED: invalid lid value (2): error buffer properly formed
TEST PASSED: valid lid (1): got correct return value
TEST PASSED: valid lid (1): error buffer properly formed
TEST PASSED: valid lid (2): got correct return value
TEST PASSED: valid lid (2): error buffer properly formed
TEST PASSED: invalid lsp (vers): got correct return value
TEST PASSED: invalid lsp (vers): error buffer properly formed
TEST PASSED: unsupported lsp: got correct return value
TEST PASSED: unsupported lsp: error buffer properly formed
TEST PASSED: invalid lsp (1): got correct return value
TEST PASSED: invalid lsp (1): error buffer properly formed
TEST PASSED: invalid lsp (2): got correct return value
TEST PASSED: invalid lsp (2): error buffer properly formed
TEST PASSED: invalid lsp (1.x): got correct return value
TEST PASSED: invalid lsp (1.x): error buffer properly formed
TEST PASSED: invalid lsp (2.x): got correct return value
TEST PASSED: invalid lsp (2.x): error buffer properly formed
TEST PASSED: invalid lsp (2.x): got correct return value
TEST PASSED: invalid lsp (2.x): error buffer properly formed
TEST PASSED: valid lsp (1.x) (1): got correct return value
TEST PASSED: valid lsp (1.x) (1): error buffer properly formed
TEST PASSED: valid lsp (1.x) (2): got correct return value
TEST PASSED: valid lsp (1.x) (2): error buffer properly formed
TEST PASSED: valid lsp (1.x) (3): got correct return value
TEST PASSED: valid lsp (1.x) (3): error buffer properly formed
TEST PASSED: valid lsp (2.x) (1): got correct return value
TEST PASSED: valid lsp (2.x) (1): error buffer properly formed
TEST PASSED: valid lsp (2.x) (2): got correct return value
TEST PASSED: valid lsp (2.x) (2): error buffer properly formed
TEST PASSED: valid lsp (2.x) (3): got correct return value
TEST PASSED: valid lsp (2.x) (3): error buffer properly formed
TEST PASSED: valid lsp (2.x) (4): got correct return value
TEST PASSED: valid lsp (2.x) (4): error buffer properly formed
TEST PASSED: valid lsp (2.x) (4): got correct return value
TEST PASSED: valid lsp (2.x) (4): error buffer properly formed
TEST PASSED: unsupported lsi: got correct return value
TEST PASSED: unsupported lsi: error buffer properly formed
TEST PASSED: invalid lsi (1): got correct return value
TEST PASSED: invalid lsi (1): error buffer properly formed
TEST PASSED: invalid lsi (2): got correct return value
TEST PASSED: invalid lsi (2): error buffer properly formed
TEST PASSED: valid lsi (1): got correct return value
TEST PASSED: valid lsi (1): error buffer properly formed
TEST PASSED: valid lsi (2): got correct return value
TEST PASSED: valid lsi (2): error buffer properly formed
TEST PASSED: valid lsi (3): got correct return value
TEST PASSED: valid lsi (3): error buffer properly formed
TEST PASSED: invalid size (1.0) (1): got correct return value
TEST PASSED: invalid size (1.0) (1): error buffer properly formed
TEST PASSED: invalid size (1.0) (2): got correct return value
TEST PASSED: invalid size (1.0) (2): error buffer properly formed
TEST PASSED: invalid size (1.0) (3): got correct return value
TEST PASSED: invalid size (1.0) (3): error buffer properly formed
TEST PASSED: bad alignment (1.0) (1): got correct return value
TEST PASSED: bad alignment (1.0) (1): error buffer properly formed
TEST PASSED: bad alignment (1.0) (2): got correct return value
TEST PASSED: bad alignment (1.0) (2): error buffer properly formed
TEST PASSED: invalid size (1.4, No LPA) (1): got correct return value
TEST PASSED: invalid size (1.4, No LPA) (1): error buffer properly formed
TEST PASSED: invalid size (1.4, No LPA) (2): got correct return value
TEST PASSED: invalid size (1.4, No LPA) (2): error buffer properly formed
TEST PASSED: invalid size (1.4, No LPA) (3): got correct return value
TEST PASSED: invalid size (1.4, No LPA) (3): error buffer properly formed
TEST PASSED: invalid size (1.4, LPA) (1): got correct return value
TEST PASSED: invalid size (1.4, LPA) (1): error buffer properly formed
TEST PASSED: invalid size (1.4, LPA) (2): got correct return value
TEST PASSED: invalid size (1.4, LPA) (2): error buffer properly formed
TEST PASSED: invalid size (1.4, LPA) (3): got correct return value
TEST PASSED: invalid size (1.4, LPA) (3): error buffer properly formed
TEST PASSED: valid size (1.0) (1): got correct return value
TEST PASSED: valid size (1.0) (1): error buffer properly formed
TEST PASSED: valid size (1.0) (2): got correct return value
TEST PASSED: valid size (1.0) (2): error buffer properly formed
TEST PASSED: valid size (1.0) (3): got correct return value
TEST PASSED: valid size (1.0) (3): error buffer properly formed
TEST PASSED: valid size (1.4, No LPA) (1): got correct return value
TEST PASSED: valid size (1.4, No LPA) (1): error buffer properly formed
TEST PASSED: valid size (1.4, No LPA) (2): got correct return value
TEST PASSED: valid size (1.4, No LPA) (2): error buffer properly formed
TEST PASSED: valid size (1.4, No LPA) (3): got correct return value
TEST PASSED: valid size (1.4, No LPA) (3): error buffer properly formed
TEST PASSED: valid size (1.4, LPA) (1): got correct return value
TEST PASSED: valid size (1.4, LPA) (1): error buffer properly formed
TEST PASSED: valid size (1.4, LPA) (2): got correct return value
TEST PASSED: valid size (1.4, LPA) (2): error buffer properly formed
TEST PASSED: valid size (1.4, LPA) (3): got correct return value
TEST PASSED: valid size (1.4, LPA) (3): error buffer properly formed
TEST PASSED: valid size (1.4, LPA) (4): got correct return value
TEST PASSED: valid size (1.4, LPA) (4): error buffer properly formed
TEST PASSED: valid size (1.4, LPA) (5): got correct return value
TEST PASSED: valid size (1.4, LPA) (5): error buffer properly formed
TEST PASSED: unsupported CSI (1.0): got correct return value
TEST PASSED: unsupported CSI (1.0): error buffer properly formed
TEST PASSED: unsupported CSI (1.4): got correct return value
TEST PASSED: unsupported CSI (1.4): error buffer properly formed
TEST PASSED: invalid CSI (2.0) (1): got correct return value
TEST PASSED: invalid CSI (2.0) (1): error buffer properly formed
TEST PASSED: invalid CSI (2.0) (2): got correct return value
TEST PASSED: invalid CSI (2.0) (2): error buffer properly formed
TEST PASSED: valid CSI (2.0) (1): got correct return value
TEST PASSED: valid CSI (2.0) (1): error buffer properly formed
TEST PASSED: valid CSI (2.0) (2): got correct return value
TEST PASSED: valid CSI (2.0) (2): error buffer properly formed
TEST PASSED: unsupported rae (1.0): got correct return value
TEST PASSED: unsupported rae (1.0): error buffer properly formed
TEST PASSED: invalid rae (1): got correct return value
TEST PASSED: invalid rae (1): error buffer properly formed
TEST PASSED: invalid rae (2): got correct return value
TEST PASSED: invalid rae (2): error buffer properly formed
TEST PASSED: valid rae (1): got correct return value
TEST PASSED: valid rae (1): error buffer properly formed
TEST PASSED: valid rae (2): got correct return value
TEST PASSED: valid rae (2): error buffer properly formed
TEST PASSED: unsupported offset (1.0): got correct return value
TEST PASSED: unsupported offset (1.0): error buffer properly formed
TEST PASSED: unsupported offset (1.4 No LPA): got correct return value
TEST PASSED: unsupported offset (1.4 No LPA): error buffer properly formed
TEST PASSED: unaligned offset (1.4) (1): got correct return value
TEST PASSED: unaligned offset (1.4) (1): error buffer properly formed
TEST PASSED: unaligned offset (1.4) (2): got correct return value
TEST PASSED: unaligned offset (1.4) (2): error buffer properly formed
TEST PASSED: unaligned offset (1.4) (3): got correct return value
TEST PASSED: unaligned offset (1.4) (3): error buffer properly formed
TEST PASSED: valid offset (1.4) (1): got correct return value
TEST PASSED: valid offset (1.4) (1): error buffer properly formed
TEST PASSED: valid offset (1.4) (2): got correct return value
TEST PASSED: valid offset (1.4) (2): error buffer properly formed
TEST PASSED: valid offset (1.4) (3): got correct return value
TEST PASSED: valid offset (1.4) (3): error buffer properly formed
TEST PASSED: unsupported nsid (1.0): got correct return value
TEST PASSED: unsupported nsid (1.0): error buffer properly formed
TEST PASSED: unsupported nsid (2.0 No NS): got correct return value
TEST PASSED: unsupported nsid (2.0 No NS): error buffer properly formed
TEST PASSED: invalid nsid (1.4) (1): got correct return value
TEST PASSED: invalid nsid (1.4) (1): error buffer properly formed
TEST PASSED: invalid nsid (1.4) (2): got correct return value
TEST PASSED: invalid nsid (1.4) (2): error buffer properly formed
TEST PASSED: invalid nsid (1.4) (3): got correct return value
TEST PASSED: invalid nsid (1.4) (3): error buffer properly formed
TEST PASSED: valid nsid (1.4) (1): got correct return value
TEST PASSED: valid nsid (1.4) (1): error buffer properly formed
TEST PASSED: valid nsid (1.4) (2): got correct return value
TEST PASSED: valid nsid (1.4) (2): error buffer properly formed
TEST PASSED: valid nsid (1.4) (3): got correct return value
TEST PASSED: valid nsid (1.4) (3): error buffer properly formed
TEST PASSED: error log (1.0): correct scope
TEST PASSED: error log (2.0): correct scope
TEST PASSED: health log (1.0): correct scope
TEST PASSED: health log (1.4 No LPA): correct scope
TEST PASSED: health log (1.0 NS Health): correct scope
TEST PASSED: health log (1.4 LPA): correct scope
TEST PASSED: health log (2.0 LPA): correct scope
TEST PASSED: firmware log (1.0): correct scope
TEST PASSED: firmware log (2.0): correct scope
TEST PASSED: changed namespace log (2.0): correct scope
TEST PASSED: supported logs log (2.0): correct scope
TEST PASSED: commands supported and effects log (1.2): correct scope
TEST PASSED: commands supported and effects log (2.0): correct scope
TEST PASSED: error log (4 entries): found correct size
TEST PASSED: error log (4 entries): variable length flag correct
TEST PASSED: error log (1 entries): found correct size
TEST PASSED: error log (1 entries): variable length flag correct
TEST PASSED: health log (1.0): found correct size
TEST PASSED: health log (1.0): variable length flag correct
TEST PASSED: health log (1.4): found correct size
TEST PASSED: health log (1.4): variable length flag correct
TEST PASSED: firmware log (1.0): found correct size
TEST PASSED: firmware log (1.0): variable length flag correct
TEST PASSED: firmware log (1.4): found correct size
TEST PASSED: firmware log (1.4): variable length flag correct
TEST PASSED: changed namespace log (1.0): found correct size
TEST PASSED: changed namespace log (1.0): variable length flag correct
TEST PASSED: changed namespace log (1.4): found correct size
TEST PASSED: changed namespace log (1.4): variable length flag correct
TEST PASSED: commands supported and effects log (1.2): found correct size
TEST PASSED: commands supported and effects log (1.2): variable length flag correct
TEST PASSED: commands supported and effects log (1.4): found correct size
TEST PASSED: commands supported and effects log (1.4): variable length flag correct
TEST PASSED: supported logs log (2.0): found correct size
TEST PASSED: supported logs log (2.0): variable length flag correct
TEST PASSED: supported logs (1.0): got correct impl
TEST PASSED: supported logs (2.0): got correct impl
TEST PASSED: error (1.0): got correct impl
TEST PASSED: error (1.4): got correct impl
TEST PASSED: health (1.0): got correct impl
TEST PASSED: health (1.4): got correct impl
TEST PASSED: firmware (1.0): got correct impl
TEST PASSED: firmware (1.4): got correct impl
TEST PASSED: changed namespace (1.0): got correct impl
TEST PASSED: changed namespace (1.4 No LPA): got correct impl
TEST PASSED: changed namespace (1.2 No OAES): got correct impl
TEST PASSED: commands supported and effects (1.0): got correct impl
TEST PASSED: commands supported and effects (1.4 LPA): got correct impl
TEST PASSED: commands supported and effects (2.0 No LPA): got correct impl
All tests passed successfully!
Actions #3

Updated by Electric Monk about 2 months ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit 046911ebe8113d65d8e3ddbd342afcbf7a70c7d1

commit  046911ebe8113d65d8e3ddbd342afcbf7a70c7d1
Author: Robert Mustacchi <rm@fingolfin.org>
Date:   2024-04-07T00:24:19.000Z

    16427 want libnvme support for supported command and log page logs
    16428 nvmeadm list-logs is not properly filtering unimpl logs
    Reviewed by: Andy Fiddaman <illumos@fiddaman.net>
    Reviewed by: C Fraire <cfraire@me.com>
    Reviewed by: Dan McDonald <danmcd@mnx.io>
    Reviewed by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
    Approved by: Gordon Ross <gordon.w.ross@gmail.com>

Actions

Also available in: Atom PDF