'Do clone operation w.r.t image cache file.'

def _do_clone_rel_img_cache(self, src, dst, share, cache_file):

    @utils.synchronized(cache_file, external=True)
    def _do_clone():
        dir = self._get_mount_point_for_share(share)
        file_path = ('%s/%s' % (dir, dst))
        if (not os.path.exists(file_path)):
            LOG.info('Cloning    from    cache    to    destination    %s', dst)
            self._clone_backing_file_for_volume(src, dst, volume_id=None, share=share)
            src_path = ('%s/%s' % (dir, src))
            os.utime(src_path, None)
    _do_clone()
