فهرست منبع

Merge pull request #31665 from mlaventure/aufs-lsof-oob

Remove aufs debugEBusy()
Brian Goff 8 سال پیش
والد
کامیت
2c2983cd8e
1فایلهای تغییر یافته به همراه0 افزوده شده و 41 حذف شده
  1. 0 41
      daemon/graphdriver/aufs/aufs.go

+ 0 - 41
daemon/graphdriver/aufs/aufs.go

@@ -272,39 +272,6 @@ func (a *Driver) createDirsFor(id string) error {
 	return nil
 }
 
-// Helper function to debug EBUSY errors on remove.
-func debugEBusy(mountPath string) (out []string, err error) {
-	// lsof is not part of GNU coreutils. This is a best effort
-	// attempt to detect offending processes.
-	c := exec.Command("lsof")
-
-	r, err := c.StdoutPipe()
-	if err != nil {
-		return nil, fmt.Errorf("Assigning pipes failed with %v", err)
-	}
-
-	if err := c.Start(); err != nil {
-		return nil, fmt.Errorf("Starting %s failed with %v", c.Path, err)
-	}
-
-	defer func() {
-		waiterr := c.Wait()
-		if waiterr != nil && err == nil {
-			err = fmt.Errorf("Waiting for %s failed with %v", c.Path, waiterr)
-		}
-	}()
-
-	sc := bufio.NewScanner(r)
-	for sc.Scan() {
-		entry := sc.Text()
-		if strings.Contains(entry, mountPath) {
-			out = append(out, entry, "\n")
-		}
-	}
-
-	return out, nil
-}
-
 // Remove will unmount and remove the given id.
 func (a *Driver) Remove(id string) error {
 	a.locker.Lock(id)
@@ -331,10 +298,6 @@ func (a *Driver) Remove(id string) error {
 				return fmt.Errorf("aufs: unmount error: %s: %v", mountpoint, err)
 			}
 			if retries >= 5 {
-				out, debugErr := debugEBusy(mountpoint)
-				if debugErr == nil {
-					logrus.Warnf("debugEBusy returned %v", out)
-				}
 				return fmt.Errorf("aufs: unmount error after retries: %s: %v", mountpoint, err)
 			}
 			// If unmount returns EBUSY, it could be a transient error. Sleep and retry.
@@ -353,10 +316,6 @@ func (a *Driver) Remove(id string) error {
 	if err := os.Rename(mountpoint, tmpMntPath); err != nil && !os.IsNotExist(err) {
 		if err == syscall.EBUSY {
 			logrus.Warn("os.Rename err due to EBUSY")
-			out, debugErr := debugEBusy(mountpoint)
-			if debugErr == nil {
-				logrus.Warnf("debugEBusy returned %v", out)
-			}
 		}
 		return err
 	}