'Create snapshot of the backing with given name and description.
:param backing: Reference to the backing entity
:param name: Snapshot name
:param description: Snapshot description
:param quiesce: Whether to quiesce the backing when taking snapshot
:return: Created snapshot entity reference'

def create_snapshot(self, backing, name, description, quiesce=False):

    LOG.debug('Snapshoting    backing:    %(backing)s    with    name:    %(name)s.', {'backing': backing, 'name': name})
    task = self._session.invoke_api(self._session.vim, 'CreateSnapshot_Task', backing, name=name, description=description, memory=False, quiesce=quiesce)
    LOG.debug('Initiated    snapshot    of    volume    backing:    %(backing)s    named:    %(name)s.', {'backing': backing, 'name': name})
    task_info = self._session.wait_for_task(task)
    snapshot = task_info.result
    LOG.info('Successfully    created    snapshot:    %(snap)s    for    volume    backing:    %(backing)s.', {'snap': snapshot, 'backing': backing})
    return snapshot
