'Create a volume from a snapshot.'

def create_volume_from_snapshot(self, volume, snapshot):

    volume['provider_location'] = self._find_share(volume)
    (addr, path) = volume['provider_location'].split(':')
    volume_path = os.path.join(path, volume['name'])
    snapshot_name = snapshot['name']
    client = self._get_rpcclient(addr, self.configuration.coho_rpc_port)
    client.create_volume_from_snapshot(snapshot_name, volume_path)
    qos = self._retrieve_qos_setting(volume)
    self._do_set_qos_policy(volume, qos)
    return {'provider_location': volume['provider_location']}
