All tests have been migrated to QMP. Remove: - _require_hmp() from common.rc - _filter_hmp() from common.filter - _filter_hmp from pipelines in common.qemu - HMP monitor mode from _launch_qemu() in common.qemu - hmp() method from iotests.py VM class - _verify_hmp() and require_hmp parameter from iotests.py
Signed-off-by: Marc-André Lureau <[email protected]> --- tests/qemu-iotests/common.filter | 7 ------- tests/qemu-iotests/common.qemu | 34 +++++++++++----------------------- tests/qemu-iotests/common.rc | 8 -------- tests/qemu-iotests/iotests.py | 28 +--------------------------- 4 files changed, 12 insertions(+), 65 deletions(-) diff --git a/tests/qemu-iotests/common.filter b/tests/qemu-iotests/common.filter index f6d94f993691..1ed2004c494f 100644 --- a/tests/qemu-iotests/common.filter +++ b/tests/qemu-iotests/common.filter @@ -102,13 +102,6 @@ _filter_qmp() -e ' QMP_VERSION' } -# readline makes HMP command strings so long that git complains -_filter_hmp() -{ - gsed -e $'s/^\\((qemu) \\)\\?.*\e\\[D/\\1/g' \ - -e $'s/\e\\[K//g' -} - # replace block job offset _filter_block_job_offset() { diff --git a/tests/qemu-iotests/common.qemu b/tests/qemu-iotests/common.qemu index 458ea9566818..dbc286320b3d 100644 --- a/tests/qemu-iotests/common.qemu +++ b/tests/qemu-iotests/common.qemu @@ -119,7 +119,7 @@ _timed_wait_for() if [ -z "${silent}" ] && [ -z "${mismatch_only}" ]; then echo "${resp}" | _filter_testdir | _filter_qemu \ - | _filter_qemu_io | _filter_qmp | _filter_hmp + | _filter_qemu_io | _filter_qmp fi if [ -n "${failure_match}" ]; then grep -q "${failure_match}" < <(echo "${resp}") @@ -134,7 +134,7 @@ _timed_wait_for() fi if [ -z "${silent}" ] && [ -n "${mismatch_only}" ]; then echo "${resp}" | _filter_testdir | _filter_qemu \ - | _filter_qemu_io | _filter_qmp | _filter_hmp + | _filter_qemu_io | _filter_qmp fi done @@ -244,7 +244,7 @@ _check_cached_events() grep -q "$match" < <(echo "${ev}") if [ $? -eq 0 ] && [ $matched = 0 ]; then echo "${ev}" | _filter_testdir | _filter_qemu \ - | _filter_qemu_io | _filter_qmp | _filter_hmp + | _filter_qemu_io | _filter_qmp matched=1 else QEMU_EVENTS="${QEMU_EVENTS:+${QEMU_EVENTS}%}${ev}" @@ -312,9 +312,6 @@ _run_qmp_job() # Launch a QEMU process. # # Input parameters: -# $qemu_comm_method: set this variable to 'monitor' (case insensitive) -# to use the QEMU HMP monitor for communication. -# Otherwise, the default of QMP is used. # $qmp_pretty: Set this variable to 'y' to enable QMP pretty printing. # $keep_stderr: Set this variable to 'y' to keep QEMU's stderr output on stderr. # If this variable is empty, stderr will be redirected to stdout. @@ -327,16 +324,10 @@ _launch_qemu() local fifo_out= local fifo_in= - if (shopt -s nocasematch; [[ "${qemu_comm_method}" == "monitor" ]]) - then - comm="-monitor stdio" + if [ "$qmp_pretty" = "y" ]; then + comm="-monitor none -qmp-pretty stdio" else - local qemu_comm_method="qmp" - if [ "$qmp_pretty" = "y" ]; then - comm="-monitor none -qmp-pretty stdio" - else - comm="-monitor none -qmp stdio" - fi + comm="-monitor none -qmp stdio" fi fifo_out=${QEMU_FIFO_OUT}_${_QEMU_HANDLE} @@ -379,13 +370,10 @@ _launch_qemu() QEMU_IN[${_QEMU_HANDLE}]=${_in_fd} QEMU_STATUS[${_QEMU_HANDLE}]=0 - if [ "${qemu_comm_method}" == "qmp" ] - then - # Don't print response, since it has version information in it - silent=yes _timed_wait_for ${_QEMU_HANDLE} "capabilities" - if [ "$qmp_pretty" = "y" ]; then - silent=yes _timed_wait_for ${_QEMU_HANDLE} "^}" - fi + # Don't print response, since it has version information in it + silent=yes _timed_wait_for ${_QEMU_HANDLE} "capabilities" + if [ "$qmp_pretty" = "y" ]; then + silent=yes _timed_wait_for ${_QEMU_HANDLE} "^}" fi QEMU_HANDLE=${_QEMU_HANDLE} let _QEMU_HANDLE++ @@ -416,7 +404,7 @@ _cleanup_qemu() if [ -n "${wait}" ]; then cat <&${QEMU_OUT[$i]} | _filter_testdir | _filter_qemu \ - | _filter_qemu_io | _filter_qmp | _filter_hmp + | _filter_qemu_io | _filter_qmp fi rm -f "${QEMU_FIFO_IN}_${i}" "${QEMU_FIFO_OUT}_${i}" eval "exec ${QEMU_IN[$i]}<&-" # close file descriptors diff --git a/tests/qemu-iotests/common.rc b/tests/qemu-iotests/common.rc index 262fe63da820..bcb1ec50a93d 100644 --- a/tests/qemu-iotests/common.rc +++ b/tests/qemu-iotests/common.rc @@ -995,14 +995,6 @@ _notrun_on_fuse_error() esac } -_require_hmp() -{ - if echo quit | $QEMU -M none -display none -monitor stdio 2>&1 | - grep -q "HMP monitor is not available"; then - _notrun "HMP monitor not available" - fi -} - # Check that we have a file system that allows huge (but very sparse) files # _require_large_file() diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 5d9b5ded64ac..b9c6878c3bce 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -934,14 +934,6 @@ def add_paused(self): self._args.append('-S') return self - def hmp(self, command_line: str, use_log: bool = False) -> QMPMessage: - cmd = 'human-monitor-command' - kwargs: Dict[str, Any] = {'command-line': command_line} - if use_log: - return self.qmp_log(cmd, **kwargs) - else: - return self.qmp(cmd, **kwargs) - def pause_drive(self, drive: str, event: Optional[str] = None) -> None: """Pause drive r/w operations""" if not event: @@ -954,12 +946,6 @@ def resume_drive(self, drive: str) -> None: """Resume drive r/w operations""" self.qmp_qemu_io(drive, f'remove_break bp_{drive}') - def hmp_qemu_io(self, drive: str, cmd: str, - use_log: bool = False, qdev: bool = False) -> QMPMessage: - """Write to a given drive using an HMP command""" - d = '-d ' if qdev else '' - return self.hmp(f'qemu-io {d}{drive} "{cmd}"', use_log=use_log) - def qmp_qemu_io(self, drive: str, cmd: str, use_log: bool = False, qdev: bool = False) -> str: """Write to a given drive using the x-qemu-io QMP command""" @@ -1464,15 +1450,6 @@ def _verify_formats(required_formats: Sequence[str] = ()) -> None: notrun(f'formats {usf_list} are not whitelisted') -def _verify_hmp() -> None: - args = [qemu_prog] + qemu_opts + ['-M', 'none', '-monitor', 'stdio'] - with subprocess.Popen(args, stdin=subprocess.PIPE, - stdout=subprocess.PIPE, stderr=subprocess.STDOUT, - universal_newlines=True) as subp: - out, _ = subp.communicate('quit\n') - if 'HMP monitor is not available' in out: - notrun('HMP monitor not available') - def _verify_virtio_blk() -> None: out = qemu_pipe('-M', 'none', '-device', 'help') if 'virtio-blk' not in out: @@ -1711,8 +1688,7 @@ def execute_setup_common(supported_fmts: Sequence[str] = (), supported_protocols: Sequence[str] = (), unsupported_protocols: Sequence[str] = (), required_fmts: Sequence[str] = (), - unsupported_imgopts: Sequence[str] = (), - require_hmp: bool = False) -> bool: + unsupported_imgopts: Sequence[str] = ()) -> bool: """ Perform necessary setup for either script-style or unittest-style tests. @@ -1733,8 +1709,6 @@ def execute_setup_common(supported_fmts: Sequence[str] = (), _verify_formats(required_fmts) _verify_virtio_blk() _verify_imgopts(unsupported_imgopts) - if require_hmp: - _verify_hmp() return debug -- 2.56.0.rc0.29.g47ce80527c56
