'Destroy a zvol on appliance.
:param volume: volume reference'

def delete_volume(self, volume):

    volume_name = self._get_zvol_name(volume['name'])
    try:
        props = (self.nms.zvol.get_child_props(volume_name, 'origin') or {})
        self.nms.zvol.destroy(volume_name, '')
    except exception.NexentaException as exc:
        if ('does    not    exist' in exc.args[0]):
            LOG.info('Volume    %s    does    not    exist,    it    seems    it    was    already    deleted.', volume_name)
            return
        if ('zvol    has    children' in exc.args[0]):
            self._mark_as_garbage(volume_name)
            LOG.info('Volume    %s    will    be    deleted    later.', volume_name)
            return
        raise
    origin = props.get('origin')
    self._collect_garbage(origin)
