'Creates a volume from a snapshot.
:param volume: volume to be created
:param snapshot: source snapshot
:returns: the provider_location of the volume created'

@cutils.trace
def create_volume_from_snapshot(self, volume, snapshot):

    nfs_mount = snapshot.volume.provider_location
    snapshot_name = self._get_snapshot_name(snapshot)
    if self._file_not_present(nfs_mount, snapshot_name):
        LOG.info('Creating    volume    %(vol)s    from    legacy    snapshot    %(snap)s.', {'vol': volume.name, 'snap': snapshot.name})
        snapshot_name = snapshot.name
    self._clone_volume(snapshot.volume, volume.name, snapshot_name)
    return {'provider_location': nfs_mount}
