code: func (attacher *photonPersistentDiskAttacher) MountDevice(spec *volume.Spec, devicePath string, deviceMountPath string) error {
  	mounter := attacher.host.GetMounter(photonPersistentDiskPluginName)
  	notMnt, err := mounter.IsLikelyNotMountPoint(deviceMountPath)
  	if err != nil {
  		if os.IsNotExist(err) {
  			if err := os.MkdirAll(deviceMountPath, 0750); err != nil {
  				klog.Errorf("Failed to create directory at %#v. err: %s", deviceMountPath, err)
  				return err
  			}
  			notMnt = true
  		} else {
  			return err
  		}
  	}
  
  	volumeSource, _, err := getVolumeSource(spec)
  	if err != nil {
  		klog.Errorf("Photon Controller attacher: MountDevice failed to get volume source. err: %s", err)
  		return err
  	}
  
  	options := []string{}
  
  	if notMnt {
  		diskMounter := volumeutil.NewSafeFormatAndMountFromHost(photonPersistentDiskPluginName, attacher.host)
  		mountOptions := volumeutil.MountOptionFromSpec(spec)
  		err = diskMounter.FormatAndMount(devicePath, deviceMountPath, volumeSource.FSType, mountOptions)
  		if err != nil {
  			os.Remove(deviceMountPath)
  			return err
  		}
  		klog.V(4).Infof("formatting spec %v devicePath %v deviceMountPath %v fs %v with options %+v", spec.Name(), devicePath, deviceMountPath, volumeSource.FSType, options)
  	}
  	return nil
  }
docs: // MountDevice mounts device to global mount point.