qemu-iotests: add option in common.qemu for mismatch only
Add option to echo response to QMP / HMP command only on mismatch. Useful for ignore all normal responses, but catching things like segfaults. Signed-off-by: Jeff Cody <jcody@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
		
							parent
							
								
									6133b39f3c
								
							
						
					
					
						commit
						a2339699c3
					
				| @ -50,6 +50,8 @@ _in_fd=4 | ||||
| # | ||||
| # If $silent is set to anything but an empty string, then | ||||
| # response is not echoed out. | ||||
| # If $mismatch_only is set, only non-matching responses will | ||||
| # be echoed. | ||||
| function _timed_wait_for() | ||||
| { | ||||
|     local h=${1} | ||||
| @ -58,14 +60,18 @@ function _timed_wait_for() | ||||
|     QEMU_STATUS[$h]=0 | ||||
|     while IFS= read -t ${QEMU_COMM_TIMEOUT} resp <&${QEMU_OUT[$h]} | ||||
|     do | ||||
|         if [ -z "${silent}" ]; then | ||||
|         if [ -z "${silent}" ] && [ -z "${mismatch_only}" ]; then | ||||
|             echo "${resp}" | _filter_testdir | _filter_qemu \ | ||||
|                            | _filter_qemu_io | _filter_qmp | _filter_hmp | ||||
|         fi | ||||
|         grep -q "${*}" < <(echo "${resp}") | ||||
|         if [ $? -eq 0 ]; then | ||||
|             return | ||||
|         elif [ -z "${silent}" ] && [ -n "${mismatch_only}" ]; then | ||||
|             echo "${resp}" | _filter_testdir | _filter_qemu \ | ||||
|                            | _filter_qemu_io | _filter_qmp | _filter_hmp | ||||
|         fi | ||||
| 
 | ||||
|     done | ||||
|     QEMU_STATUS[$h]=-1 | ||||
|     if [ -z "${qemu_error_no_exit}" ]; then | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Jeff Cody
						Jeff Cody