'Creates volume clone.
If source volume\'s backing does not exist, then pass.
Linked clone of attached volume is not supported.
:param volume: New Volume object
:param src_vref: Source Volume object'

def _create_cloned_volume(self, volume, src_vref):

    backing = self.volumeops.get_backing(src_vref['name'])
    if (not backing):
        LOG.info('There    is    no    backing    for    the    source    volume:    %(src)s.    Not    creating    any    backing    for    volume:    %(vol)s.', {'src': src_vref['name'], 'vol': volume['name']})
        return
    clone_type = VMwareVcVmdkDriver._get_clone_type(volume)
    snapshot = None
    if (clone_type == volumeops.LINKED_CLONE_TYPE):
        if (src_vref['status'] != 'available'):
            msg = (_('Linked    clone    of    source    volume    not    supported    in    state:    %s.') % src_vref['status'])
            LOG.error(msg)
            raise exception.InvalidVolume(msg)
        snap_name = ('temp-snapshot-%s' % volume['id'])
        snapshot = self.volumeops.create_snapshot(backing, snap_name, None)
    try:
        self._clone_backing(volume, backing, snapshot, clone_type, src_vref['size'])
    finally:
        if snapshot:
            try:
                self.volumeops.delete_snapshot(backing, snap_name)
            except exceptions.VimException:
                LOG.debug('Unable    to    delete    temporary    snapshot:    %s    of    volume    backing.', snap_name, resource=volume, exc_info=True)
