libnvme(9) API Manual libnvme(9)

# [NAME](#NAME)

struct nvme\_voltage\_measurement\_log - Voltage Measurement Log Page (Log Identifier 27h)

# [SYNOPSIS](#SYNOPSIS)

struct nvme\_voltage\_measurement\_log {  
**\_\_u8 vmgn;**  
**\_\_u8 vma;**  
**\_\_le16 vsi;**  
**\_\_le32 vmlsz;**  
**\_\_le16 nvmds;**  
**\_\_le16 nvmde;**  
**\_\_le16 svmtr;**  
**struct nvme\_timestamp svmts;**  
**\_\_le16 cntlid;**  
**\_\_le16 vlvss;**  
**\_\_u8 rsvd26\[6];**  
**\_\_le16 ovol;**  
**\_\_le16 ovc;**  
**\_\_le16 ovlt;**  
**struct nvme\_timestamp ovts;**  
**\_\_u8 iovpe;**  
**\_\_le16 uvol;**  
**\_\_le16 uvc;**  
**\_\_le16 uvlt;**  
**struct nvme\_timestamp uvts;**  
**\_\_u8 iuvpe;**  
**\_\_u8 rsvd62\[2];**  
**\_\_le16 ivmd\[];**  
};

# [Members](#Members)

[vmgn](#vmgn)

Voltage Measurement Generation Number: incremented each time a Set Features command starts Voltage Measurements.

[vma](#vma)

Voltage Measurement Attributes, see *enum* *nvme\_voltage\_measurement\_vma*.

[vsi](#vsi)

Voltage Sensor Info, see *enum nvme\_voltage\_measurement\_vsi*. Meaningless if the VMC bit is cleared to '0' in *vma*.

[vmlsz](#vmlsz)

Voltage Measurement Log Size: size of this log page in bytes.

[nvmds](#nvmds)

Number of Voltage Measurement Descriptors Supported: maximum number of entries in the Interval Voltage Measurement Descriptor list.

[nvmde](#nvmde)

Number of Voltage Measurement Descriptors Entries: number of entries in *ivmd*.

[svmtr](#svmtr)

Stop Voltage Measurement Time Remaining, in minutes rounded up.

[svmts](#svmts)

Stop Voltage Measurement Timestamp: time at which interval voltage measurements stopped being collected. See *struct* *nvme\_timestamp*.

[cntlid](#cntlid)

Controller Identifier associated with *vsi*, *svmts*, *ovts*, and *uvts*.

[vlvss](#vlvss)

Voltage Log Vendor Specific Size: size in bytes of the Vendor Specific field following *ivmd*.

[rsvd26](#rsvd26)

Reserved

[ovol](#ovol)

Overvoltage, see *enum nvme\_voltage\_measurement\_ovol*.

[ovc](#ovc)

Overvoltage Count.

[ovlt](#ovlt)

Overvoltage Log Threshold, in units of the Voltage Sensor Sample Scale.

[ovts](#ovts)

Overvoltage Timestamp. See *struct nvme\_timestamp*.

[iovpe](#iovpe)

Interval Overvoltage Percent Error (0 to 100). 255 indicates a value is not reported.

[uvol](#uvol)

Undervoltage, see *enum nvme\_voltage\_measurement\_uvol*.

[uvc](#uvc)

Undervoltage Count.

[uvlt](#uvlt)

Undervoltage Log Threshold, in units of the Voltage Sensor Sample Scale.

[uvts](#uvts)

Undervoltage Timestamp. See *struct nvme\_timestamp*.

[iuvpe](#iuvpe)

Interval Undervoltage Percent Error (0 to 100). 255 indicates a value is not reported.

[rsvd62](#rsvd62)

Reserved

[ivmd](#ivmd)

Interval Voltage Measurement Descriptor list, see *enum* *nvme\_voltage\_measurement\_ivmd*. Followed by a Vendor Specific field of *vlvss* bytes, if non-zero.

struct nvme\_voltage\_measurement\_log October 2026

---

Document: nvme_voltage_measurement_log-libnvme3(2) from nvme-cli 3.2-r0 (Chainguard OS)
Source: https://github.com/linux-nvme/nvme-cli
