diff --git a/go.mod b/go.mod
index c9a9ef5d..ac368692 100644
--- a/go.mod
+++ b/go.mod
@@ -4,7 +4,7 @@ go 1.20
 
 require (
 	github.com/NVIDIA/go-nvlib v0.6.1
-	github.com/NVIDIA/go-nvml v0.12.4-0
+	github.com/NVIDIA/go-nvml v0.12.4-1
 	github.com/fsnotify/fsnotify v1.7.0
 	github.com/moby/sys/symlink v0.3.0
 	github.com/opencontainers/runtime-spec v1.2.0
diff --git a/go.sum b/go.sum
index 19f7b340..4471f1a4 100644
--- a/go.sum
+++ b/go.sum
@@ -1,7 +1,7 @@
 github.com/NVIDIA/go-nvlib v0.6.1 h1:0/5FvaKvDJoJeJ+LFlh+NDQMxMlVw9wOXrOVrGXttfE=
 github.com/NVIDIA/go-nvlib v0.6.1/go.mod h1:9UrsLGx/q1OrENygXjOuM5Ey5KCtiZhbvBlbUIxtGWY=
-github.com/NVIDIA/go-nvml v0.12.4-0 h1:4tkbB3pT1O77JGr0gQ6uD8FrsUPqP1A/EOEm2wI1TUg=
-github.com/NVIDIA/go-nvml v0.12.4-0/go.mod h1:8Llmj+1Rr+9VGGwZuRer5N/aCjxGuR5nPb/9ebBiIEQ=
+github.com/NVIDIA/go-nvml v0.12.4-1 h1:WKUvqshhWSNTfm47ETRhv0A0zJyr1ncCuHiXwoTrBEc=
+github.com/NVIDIA/go-nvml v0.12.4-1/go.mod h1:8Llmj+1Rr+9VGGwZuRer5N/aCjxGuR5nPb/9ebBiIEQ=
 github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM=
 github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ=
 github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4=
diff --git a/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/device.go b/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/device.go
index ac778e5a..de0ab88c 100644
--- a/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/device.go
+++ b/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/device.go
@@ -2808,6 +2808,7 @@ func (l *library) DeviceGetRunningProcessDetailList(device Device) (ProcessDetai
 
 func (device nvmlDevice) GetRunningProcessDetailList() (ProcessDetailList, Return) {
 	var plist ProcessDetailList
+	plist.Version = STRUCT_VERSION(plist, 1)
 	ret := nvmlDeviceGetRunningProcessDetailList(device, &plist)
 	return plist, ret
 }
@@ -2923,6 +2924,7 @@ func (l *library) DeviceGetPciInfoExt(device Device) (PciInfoExt, Return) {
 
 func (device nvmlDevice) GetPciInfoExt() (PciInfoExt, Return) {
 	var pciInfo PciInfoExt
+	pciInfo.Version = STRUCT_VERSION(pciInfo, 1)
 	ret := nvmlDeviceGetPciInfoExt(device, &pciInfo)
 	return pciInfo, ret
 }
@@ -2969,6 +2971,7 @@ func (l *library) DeviceGetVgpuHeterogeneousMode(device Device) (VgpuHeterogeneo
 
 func (device nvmlDevice) GetVgpuHeterogeneousMode() (VgpuHeterogeneousMode, Return) {
 	var heterogeneousMode VgpuHeterogeneousMode
+	heterogeneousMode.Version = STRUCT_VERSION(heterogeneousMode, 1)
 	ret := nvmlDeviceGetVgpuHeterogeneousMode(device, &heterogeneousMode)
 	return heterogeneousMode, ret
 }
@@ -2994,6 +2997,7 @@ func (device nvmlDevice) GetVgpuTypeSupportedPlacements(vgpuTypeId VgpuTypeId) (
 
 func (vgpuTypeId nvmlVgpuTypeId) GetSupportedPlacements(device Device) (VgpuPlacementList, Return) {
 	var placementList VgpuPlacementList
+	placementList.Version = STRUCT_VERSION(placementList, 1)
 	ret := nvmlDeviceGetVgpuTypeSupportedPlacements(nvmlDeviceHandle(device), vgpuTypeId, &placementList)
 	return placementList, ret
 }
@@ -3009,6 +3013,7 @@ func (device nvmlDevice) GetVgpuTypeCreatablePlacements(vgpuTypeId VgpuTypeId) (
 
 func (vgpuTypeId nvmlVgpuTypeId) GetCreatablePlacements(device Device) (VgpuPlacementList, Return) {
 	var placementList VgpuPlacementList
+	placementList.Version = STRUCT_VERSION(placementList, 1)
 	ret := nvmlDeviceGetVgpuTypeCreatablePlacements(nvmlDeviceHandle(device), vgpuTypeId, &placementList)
 	return placementList, ret
 }
@@ -3041,6 +3046,7 @@ func (l *library) DeviceGetVgpuProcessesUtilizationInfo(device Device) (VgpuProc
 
 func (device nvmlDevice) GetVgpuProcessesUtilizationInfo() (VgpuProcessesUtilizationInfo, Return) {
 	var vgpuProcUtilInfo VgpuProcessesUtilizationInfo
+	vgpuProcUtilInfo.Version = STRUCT_VERSION(vgpuProcUtilInfo, 1)
 	ret := nvmlDeviceGetVgpuProcessesUtilizationInfo(device, &vgpuProcUtilInfo)
 	return vgpuProcUtilInfo, ret
 }
@@ -3052,6 +3058,7 @@ func (l *library) DeviceGetSramEccErrorStatus(device Device) (EccSramErrorStatus
 
 func (device nvmlDevice) GetSramEccErrorStatus() (EccSramErrorStatus, Return) {
 	var status EccSramErrorStatus
+	status.Version = STRUCT_VERSION(status, 1)
 	ret := nvmlDeviceGetSramEccErrorStatus(device, &status)
 	return status, ret
 }
diff --git a/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/gpm.go b/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/gpm.go
index 7f8995cc..5a71c0ff 100644
--- a/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/gpm.go
+++ b/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/gpm.go
@@ -122,7 +122,7 @@ func (device nvmlDevice) GpmQueryDeviceSupportV() GpmSupportV {
 
 func (gpmSupportV GpmSupportV) V1() (GpmSupport, Return) {
 	var gpmSupport GpmSupport
-	gpmSupport.Version = 1
+	gpmSupport.Version = STRUCT_VERSION(gpmSupport, 1)
 	ret := nvmlGpmQueryDeviceSupport(gpmSupportV.device, &gpmSupport)
 	return gpmSupport, ret
 }
@@ -133,7 +133,7 @@ func (l *library) GpmQueryDeviceSupport(device Device) (GpmSupport, Return) {
 
 func (device nvmlDevice) GpmQueryDeviceSupport() (GpmSupport, Return) {
 	var gpmSupport GpmSupport
-	gpmSupport.Version = GPM_SUPPORT_VERSION
+	gpmSupport.Version = STRUCT_VERSION(gpmSupport, GPM_SUPPORT_VERSION)
 	ret := nvmlGpmQueryDeviceSupport(device, &gpmSupport)
 	return gpmSupport, ret
 }
diff --git a/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/system.go b/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/system.go
index bee39641..a1cc7db4 100644
--- a/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/system.go
+++ b/vendor/github.com/NVIDIA/go-nvml/pkg/nvml/system.go
@@ -121,6 +121,7 @@ func SystemGetNvlinkBwMode() (uint32, Return) {
 // nvml.SystemGetConfComputeKeyRotationThresholdInfo()
 func (l *library) SystemGetConfComputeKeyRotationThresholdInfo() (ConfComputeGetKeyRotationThresholdInfo, Return) {
 	var keyRotationThresholdInfo ConfComputeGetKeyRotationThresholdInfo
+	keyRotationThresholdInfo.Version = STRUCT_VERSION(keyRotationThresholdInfo, 1)
 	ret := nvmlSystemGetConfComputeKeyRotationThresholdInfo(&keyRotationThresholdInfo)
 	return keyRotationThresholdInfo, ret
 }
@@ -128,6 +129,7 @@ func (l *library) SystemGetConfComputeKeyRotationThresholdInfo() (ConfComputeGet
 // nvml.SystemGetConfComputeSettings()
 func (l *library) SystemGetConfComputeSettings() (SystemConfComputeSettings, Return) {
 	var settings SystemConfComputeSettings
+	settings.Version = STRUCT_VERSION(settings, 1)
 	ret := nvmlSystemGetConfComputeSettings(&settings)
 	return settings, ret
 }
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 01c37032..512bfd95 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -6,7 +6,7 @@ github.com/NVIDIA/go-nvlib/pkg/nvpci
 github.com/NVIDIA/go-nvlib/pkg/nvpci/bytes
 github.com/NVIDIA/go-nvlib/pkg/nvpci/mmio
 github.com/NVIDIA/go-nvlib/pkg/pciids
-# github.com/NVIDIA/go-nvml v0.12.4-0
+# github.com/NVIDIA/go-nvml v0.12.4-1
 ## explicit; go 1.20
 github.com/NVIDIA/go-nvml/pkg/dl
 github.com/NVIDIA/go-nvml/pkg/nvml