code: func GetDeviceNameFromMountLinux(mounter Interface, mountPath, pluginMountDir string) (string, error) {
  	refs, err := mounter.GetMountRefs(mountPath)
  	if err != nil {
  		klog.V(4).Infof("GetMountRefs failed for mount path %q: %v", mountPath, err)
  		return "", err
  	}
  	if len(refs) == 0 {
  		klog.V(4).Infof("Directory %s is not mounted", mountPath)
  		return "", fmt.Errorf("directory %s is not mounted", mountPath)
  	}
  	for _, ref := range refs {
  		if strings.HasPrefix(ref, pluginMountDir) {
  			volumeID, err := filepath.Rel(pluginMountDir, ref)
  			if err != nil {
  				klog.Errorf("Failed to get volume id from mount %s - %v", mountPath, err)
  				return "", err
  			}
  			return volumeID, nil
  		}
  	}
  
  	return path.Base(mountPath), nil
  }
docs: // GetDeviceNameFromMountLinux find the device name from /proc/mounts in which
  // the mount path reference should match the given plugin mount directory. In case no mount path reference
  // matches, returns the volume name taken from its given mountPath
  // This implementation is shared with NsEnterMounter