diff options
Diffstat (limited to 'pkg/driver/mount_util.go')
| -rw-r--r-- | pkg/driver/mount_util.go | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/pkg/driver/mount_util.go b/pkg/driver/mount_util.go index 049d4dc..200817d 100644 --- a/pkg/driver/mount_util.go +++ b/pkg/driver/mount_util.go @@ -83,10 +83,14 @@ func cleanupStaleStagingPath(stagingPath string) error { // If stat fails with a different error (like corrupted mount), try force cleanup if mount.IsCorruptedMnt(err) { // Force unmount for corrupted mounts - if err := mount.CleanupMountPoint(stagingPath, mountutil, true); err != nil { - glog.Warningf("failed to cleanup corrupted mount point %s: %v", stagingPath, err) - return err + if cleanupErr := mount.CleanupMountPoint(stagingPath, mountutil, true); cleanupErr != nil { + glog.Warningf("failed to cleanup corrupted mount point %s: %v", stagingPath, cleanupErr) + return cleanupErr } + } else { + // stat failed with an unexpected error, return it + glog.Warningf("stat on staging path %s failed during cleanup: %v", stagingPath, err) + return err } } |
