def METHOD_NAME(self):
    '''Launch the VM and establish a QMP connection'''
    devnull = open('/dev/null', 'rb')
    qemulog = open(self._qemu_log_path, 'wb')
    try:
        self._pre_launch()
        args = self._wrapper + [self._binary] + self._base_args() + self._args
        self._popen = subprocess.Popen(args, stdin=devnull, stdout=qemulog,
                                       stderr=subprocess.STDOUT, shell=False)
        self._post_launch()
    except:
        if self._popen:
            self._popen.kill()
        self._load_io_log()
        self._post_shutdown()
        self._popen = None
        raise