Procházet zdrojové kódy

devmapper: Log fstype and mount options during mount error

Right now we only log source and destination (and demsg) if mount operation
fails. fstype and mount options are available easily. It probably is a good
idea to log these as well. Especially sometimes failures can happen due to
mount options.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Vivek Goyal před 7 roky
rodič
revize
f728d74ac5
1 změnil soubory, kde provedl 2 přidání a 2 odebrání
  1. 2 2
      daemon/graphdriver/devmapper/deviceset.go

+ 2 - 2
daemon/graphdriver/devmapper/deviceset.go

@@ -1201,7 +1201,7 @@ func (devices *DeviceSet) growFS(info *devInfo) error {
 	options = joinMountOptions(options, devices.mountOptions)
 	options = joinMountOptions(options, devices.mountOptions)
 
 
 	if err := mount.Mount(info.DevName(), fsMountPoint, devices.BaseDeviceFilesystem, options); err != nil {
 	if err := mount.Mount(info.DevName(), fsMountPoint, devices.BaseDeviceFilesystem, options); err != nil {
-		return fmt.Errorf("Error mounting '%s' on '%s': %s\n%v", info.DevName(), fsMountPoint, err, string(dmesg.Dmesg(256)))
+		return fmt.Errorf("Error mounting '%s' on '%s' (fstype='%s' options='%s'): %s\n%v", info.DevName(), fsMountPoint, devices.BaseDeviceFilesystem, options, err, string(dmesg.Dmesg(256)))
 	}
 	}
 
 
 	defer unix.Unmount(fsMountPoint, unix.MNT_DETACH)
 	defer unix.Unmount(fsMountPoint, unix.MNT_DETACH)
@@ -2392,7 +2392,7 @@ func (devices *DeviceSet) MountDevice(hash, path, mountLabel string) error {
 	options = joinMountOptions(options, label.FormatMountLabel("", mountLabel))
 	options = joinMountOptions(options, label.FormatMountLabel("", mountLabel))
 
 
 	if err := mount.Mount(info.DevName(), path, fstype, options); err != nil {
 	if err := mount.Mount(info.DevName(), path, fstype, options); err != nil {
-		return fmt.Errorf("devmapper: Error mounting '%s' on '%s': %s\n%v", info.DevName(), path, err, string(dmesg.Dmesg(256)))
+		return fmt.Errorf("devmapper: Error mounting '%s' on '%s' (fstype='%s' options='%s'): %s\n%v", info.DevName(), path, fstype, options, err, string(dmesg.Dmesg(256)))
 	}
 	}
 
 
 	if fstype == "xfs" && devices.xfsNospaceRetries != "" {
 	if fstype == "xfs" && devices.xfsNospaceRetries != "" {