I have an otherwise healthy windows node, but csi-driver-smb node continues to crash because of something related to safe_mounter_windows.go.... On windows, the csi-smb-node-win pod doesnt stay up for more then a few seconds....
Git Commit: 9a9f0e8e5158389dec157e2195dce71b78247630
Go Version: go1.14.4
Platform: windows/amd64
Streaming logs below:
I1111 13:23:46.103185 2092 driver.go:93] Enabling controller service capability: CREATE_DELETE_VOLUME
I1111 13:23:46.103185 2092 driver.go:112] Enabling volume access mode: SINGLE_NODE_WRITER
I1111 13:23:46.103185 2092 driver.go:112] Enabling volume access mode: SINGLE_NODE_READER_ONLY
I1111 13:23:46.103185 2092 driver.go:112] Enabling volume access mode: MULTI_NODE_READER_ONLY
I1111 13:23:46.103185 2092 driver.go:112] Enabling volume access mode: MULTI_NODE_SINGLE_WRITER
I1111 13:23:46.103185 2092 driver.go:112] Enabling volume access mode: MULTI_NODE_MULTI_WRITER
I1111 13:23:46.103185 2092 driver.go:103] Enabling node service capability: STAGE_UNSTAGE_VOLUME
I1111 13:23:46.105164 2092 server.go:118] Listening for connections on address: &net.UnixAddr{Name:"C:\\\\csi\\\\csi.sock", Net:"unix"}
I1111 13:24:23.055069 2092 utils.go:107] GRPC call: /csi.v1.Identity/Probe
I1111 13:24:23.055069 2092 utils.go:108] GRPC request: {}
I1111 13:24:23.055069 2092 utils.go:113] GRPC response: {"ready":{"value":true}}
I1111 13:24:48.102229 2092 utils.go:107] GRPC call: /csi.v1.Node/NodeGetCapabilities
I1111 13:24:48.102229 2092 utils.go:108] GRPC request: {}
I1111 13:24:48.102229 2092 utils.go:113] GRPC response: {"capabilities":[{"Type":{"Rpc":{"type":1}}}]}
I1111 13:24:48.109258 2092 utils.go:107] GRPC call: /csi.v1.Node/NodeStageVolume
I1111 13:24:48.109258 2092 utils.go:108] GRPC request: {"secrets":"***stripped***","staging_target_path":"\\var\\lib\\kubelet\\plugins\\kubernetes.io\\csi\\pv\\pvc-406947d6-29a0-4388-808f-4d2bcedccba6\\globalmount","volume_capability":{"AccessType":{"Mount":{"fs_type":"ext4","mount_flags":["dir_mode=0777","file_mode=0777","uid=1001","gid=1001"]}},"access_mode":{"mode":1}},"volume_context":{"createSubDir":"false","source":"//smb-server.default.svc.cluster.local/share","storage.kubernetes.io/csiProvisionerIdentity":"1605115216184-8081-smb.csi.k8s.io"},"volume_id":"pvc-406947d6-29a0-4388-808f-4d2bcedccba6"}
I1111 13:24:48.110838 2092 nodeserver.go:195] targetPath(\var\lib\kubelet\plugins\kubernetes.io\csi\pv\pvc-406947d6-29a0-4388-808f-4d2bcedccba6\globalmount) volumeID(pvc-406947d6-29a0-4388-808f-4d2bcedccba6) context(map[createSubDir:false source://smb-server.default.svc.cluster.local/share storage.kubernetes.io/csiProvisionerIdentity:1605115216184-8081-smb.csi.k8s.io]) mountflags([dir_mode=0777 file_mode=0777 uid=1001 gid=1001]) mountOptions([AZURE\USERNAME])
I1111 13:24:48.110838 2092 safe_mounter_windows.go:147] IsLikelyNotMountPoint: \var\lib\kubelet\plugins\kubernetes.io\csi\pv\pvc-406947d6-29a0-4388-808f-4d2bcedccba6\globalmount
I1111 13:24:48.110838 2092 safe_mounter_windows.go:205] Exists path: \var\lib\kubelet\plugins\kubernetes.io\csi\pv\pvc-406947d6-29a0-4388-808f-4d2bcedccba6\globalmount
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x10 pc=0x897f8c]
goroutine 42 [running]:
github.com/kubernetes-csi/csi-driver-smb/pkg/mounter.(*CSIProxyMounter).ExistsPath(0xc000020820, 0xc00003a0e0, 0x62, 0x0, 0xa5a6e7, 0x19)
/root/go/src/github.com/kubernetes-csi/csi-driver-smb/pkg/mounter/safe_mounter_windows.go:210 +0x17c
github.com/kubernetes-csi/csi-driver-smb/pkg/mounter.(*CSIProxyMounter).IsLikelyNotMountPoint(0xc000020820, 0xc00003a0e0, 0x62, 0x0, 0x0, 0xa36540)
/root/go/src/github.com/kubernetes-csi/csi-driver-smb/pkg/mounter/safe_mounter_windows.go:148 +0xdf
github.com/kubernetes-csi/csi-driver-smb/pkg/smb.(*Driver).ensureMountPoint(0xc000050080, 0xc00003a0e0, 0x62, 0x0, 0xa71b49, 0x47)
/root/go/src/github.com/kubernetes-csi/csi-driver-smb/pkg/smb/nodeserver.go:274 +0x70
github.com/kubernetes-csi/csi-driver-smb/pkg/smb.(*Driver).NodeStageVolume(0xc000050080, 0xb25320, 0xc0001fc090, 0xc000047800, 0xc000050080, 0xed9b77, 0xc00004d420)
/root/go/src/github.com/kubernetes-csi/csi-driver-smb/pkg/smb/nodeserver.go:198 +0x6d9
github.com/container-storage-interface/spec/lib/go/csi._Node_NodeStageVolume_Handler.func1(0xb25320, 0xc0001fc090, 0xa1cbc0, 0xc000047800, 0xa53ed3, 0x10, 0xc000245ae8, 0x1)
/root/go/pkg/mod/github.com/container-storage-interface/[email protected]/lib/go/csi/csi.pb.go:5941 +0x8d
github.com/kubernetes-csi/csi-driver-smb/pkg/csi-common.logGRPC(0xb25320, 0xc0001fc090, 0xa1cbc0, 0xc000047800, 0xc000005d00, 0xc000005d20, 0xc000155b78, 0x49e08f, 0x9f6700, 0xc0001fc090)
/root/go/src/github.com/kubernetes-csi/csi-driver-smb/pkg/csi-common/utils.go:109 +0x187
github.com/container-storage-interface/spec/lib/go/csi._Node_NodeStageVolume_Handler(0xa3b2c0, 0xc000050080, 0xb25320, 0xc0001fc090, 0xc0000477a0, 0xa7cca8, 0xb25320, 0xc0001fc090, 0xc0002ee000, 0x19d)
/root/go/pkg/mod/github.com/container-storage-interface/[email protected]/lib/go/csi/csi.pb.go:5943 +0x152
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00002f500, 0xb2b2e0, 0xc0000cd800, 0xc000066200, 0xc00004eb40, 0xf31da0, 0x0, 0x0, 0x0)
/root/go/pkg/mod/google.golang.org/[email protected]/server.go:1024 +0x508
google.golang.org/grpc.(*Server).handleStream(0xc00002f500, 0xb2b2e0, 0xc0000cd800, 0xc000066200, 0x0)
/root/go/pkg/mod/google.golang.org/[email protected]/server.go:1313 +0xd44
google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc00032df90, 0xc00002f500, 0xb2b2e0, 0xc0000cd800, 0xc000066200)
/root/go/pkg/mod/google.golang.org/[email protected]/server.go:722 +0xa8
created by google.golang.org/grpc.(*Server).serveStreams.func1
/root/go/pkg/mod/google.golang.org/[email protected]/server.go:720 +0xa8
windows node would not panic, and would print out an actionable error message if it needed to exit