code: async def mount(self, device):
          
          device = self._find_device(device)
          if not self.is_handleable(device) or not device.is_filesystem:
              self._log.warn(_('not mounting {0}: unhandled device', device))
              return False
          if device.is_mounted:
              self._log.info(_('not mounting {0}: already mounted', device))
              return True
          options = match_config(self._config, device, 'options', None)
          kwargs = dict(options=options)
          self._log.debug(_('mounting {0} with {1}', device, kwargs))
          self._check_device_before_mount(device)
          mount_path = await device.mount(**kwargs)
          self._log.info(_('mounted {0} on {1}', device, mount_path))
          return True
docs: Mount the device if not already mounted.
  
          :param device: device object, block device path or mount path
          :returns: whether the device is mounted.