diff --git a/agent/smart.go b/agent/smart.go index 9de1e8f4..a8c0c52e 100644 --- a/agent/smart.go +++ b/agent/smart.go @@ -1118,6 +1118,9 @@ func (sm *SmartManager) parseSmartForNvme(output []byte) (bool, int) { smartData.SerialNumber = data.SerialNumber smartData.FirmwareVersion = data.FirmwareVersion smartData.Capacity = data.UserCapacity.Bytes + if smartData.Capacity == 0 { + smartData.Capacity = data.NVMeTotalCapacity + } if smartData.Capacity == 0 && (runtime.GOOS == "darwin" || sm.darwinNvmeProvider != nil) { smartData.Capacity = sm.lookupDarwinNvmeCapacity(data.SerialNumber) } diff --git a/internal/entities/smart/smart.go b/internal/entities/smart/smart.go index 42a64df2..24c7eac2 100644 --- a/internal/entities/smart/smart.go +++ b/internal/entities/smart/smart.go @@ -494,7 +494,7 @@ type SmartInfoForNvme struct { FirmwareVersion string `json:"firmware_version"` // NVMePCIVendor NVMePCIVendor `json:"nvme_pci_vendor"` // NVMeIEEEOUIIdentifier uint32 `json:"nvme_ieee_oui_identifier"` - // NVMeTotalCapacity uint64 `json:"nvme_total_capacity"` + NVMeTotalCapacity uint64 `json:"nvme_total_capacity"` // NVMeUnallocatedCapacity uint64 `json:"nvme_unallocated_capacity"` // NVMeControllerID uint16 `json:"nvme_controller_id"` // NVMeVersion VersionStringInfo `json:"nvme_version"`