From 5a8bd7ef489423eaa9cf01d6477c5b1d609cf108 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moritz=20R=C3=B6hrich?= Date: Fri, 7 May 2021 09:17:49 +0200 Subject: [PATCH] pod_killer: fix nil pointer dereference for non-csi volumes In case a PV does not have `spec.CSI` defined (e.g. a hostpath volume), it should just be ignored and not cause a nil pointer dereference. fixes: https://github.com/quobyte/quobyte-csi/issues/36 --- pod_killer.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pod_killer.go b/pod_killer.go index a52a632..eb2b8d7 100644 --- a/pod_killer.go +++ b/pod_killer.go @@ -66,7 +66,7 @@ func (podKiller *PodKiller) Run(monitoringInterval *time.Duration) { func (podKiller *PodKiller) filterProvisionerPVs(pvs *v1.PersistentVolumeList) map[string]v1.PersistentVolume { provisionerPVs := make(map[string]v1.PersistentVolume) for _, pv := range pvs.Items { - if pv.Spec.CSI.Driver == podKiller.CSIProvisionerName { + if pv.Spec.CSI != nil && pv.Spec.CSI.Driver == podKiller.CSIProvisionerName { provisionerPVs[pv.Name] = pv } }