Message ID | 20210628123150.56567-1-eesposit@redhat.com |
---|---|
Headers | show |
Series | qemu_iotests: improve debugging options | expand |
On Mon, Jun 28, 2021 at 8:32 AM Emanuele Giuseppe Esposito < eesposit@redhat.com> wrote: > This series adds the option to attach gdbserver and valgrind > to the QEMU binary running in qemu_iotests. > It also allows to redirect QEMU binaries output of the python tests > to the stdout, instead of a log file. > > Patches 1-9 introduce the -gdb option to both python and bash tests, > 10-14 extend the already existing -valgrind flag to work also on > python tests, and patch 15-16 introduces -p to enable logging to stdout. > > In particular, patches 1,6,11 focus on extending the QMP socket timers > when using gdb/valgrind, otherwise the python tests will fail due to > delays in the QMP responses. > > Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com> > Don't forget that you have my Acked-By on patches 1-3, I'm content with a Block maintainer staging this entire series. --js > --- > v7: > * While using debugging tests with gdb, I found out that there is a > timer also in bash scripts (common.qemu). Modify patch 8 to remove > the timer when gdb is used. > > Emanuele Giuseppe Esposito (15): > python: qemu: add timer parameter for qmp.accept socket > python: qemu: pass the wrapper field from QEMUQtestmachine to > QEMUMachine > docs/devel/testing: add debug section to the QEMU iotests chapter > qemu-iotests: add option to attach gdbserver > qemu-iotests: delay QMP socket timers > qemu_iotests: insert gdbserver command line as wrapper for qemu binary > qemu-iotests: add gdbserver option to script tests too > docs/devel/testing: add -gdb option to the debugging section of QEMU > iotests > qemu-iotests: extend the check script to prepare supporting valgrind > for python tests > qemu-iotests: extend QMP socket timeout when using valgrind > qemu-iotests: allow valgrind to read/delete the generated log file > qemu-iotests: insert valgrind command line as wrapper for qemu binary > docs/devel/testing: add -valgrind option to the debug section of QEMU > iotests > qemu-iotests: add option to show qemu binary logs on stdout > docs/devel/testing: add -p option to the debug section of QEMU iotests > > John Snow (1): > python: Reduce strictness of pylint's duplicate-code check > > docs/devel/testing.rst | 30 +++++++++++++++++++++ > python/qemu/machine/machine.py | 16 +++++++---- > python/qemu/machine/qtest.py | 9 ++++--- > python/setup.cfg | 5 ++++ > tests/qemu-iotests/check | 15 ++++++++--- > tests/qemu-iotests/common.qemu | 7 ++++- > tests/qemu-iotests/common.rc | 8 +++++- > tests/qemu-iotests/iotests.py | 49 ++++++++++++++++++++++++++++++++-- > tests/qemu-iotests/testenv.py | 23 ++++++++++++++-- > 9 files changed, 144 insertions(+), 18 deletions(-) > > -- > 2.31.1 > >
On 28/06/2021 18:48, John Snow wrote: > > > On Mon, Jun 28, 2021 at 8:32 AM Emanuele Giuseppe Esposito > <eesposit@redhat.com <mailto:eesposit@redhat.com>> wrote: > > This series adds the option to attach gdbserver and valgrind > to the QEMU binary running in qemu_iotests. > It also allows to redirect QEMU binaries output of the python tests > to the stdout, instead of a log file. > > Patches 1-9 introduce the -gdb option to both python and bash tests, > 10-14 extend the already existing -valgrind flag to work also on > python tests, and patch 15-16 introduces -p to enable logging to stdout. > > In particular, patches 1,6,11 focus on extending the QMP socket timers > when using gdb/valgrind, otherwise the python tests will fail due to > delays in the QMP responses. > > Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com > <mailto:eesposit@redhat.com>> > > > Don't forget that you have my Acked-By on patches 1-3, I'm content with > a Block maintainer staging this entire series. > Sorry I forgot to update that. Will add the acked-by and together with Eric's changes will respin once more. Thank you, Emanuele > --- > v7: > * While using debugging tests with gdb, I found out that there is a > timer also in bash scripts (common.qemu). Modify patch 8 to remove > the timer when gdb is used. > > Emanuele Giuseppe Esposito (15): > python: qemu: add timer parameter for qmp.accept socket > python: qemu: pass the wrapper field from QEMUQtestmachine to > QEMUMachine > docs/devel/testing: add debug section to the QEMU iotests chapter > qemu-iotests: add option to attach gdbserver > qemu-iotests: delay QMP socket timers > qemu_iotests: insert gdbserver command line as wrapper for qemu > binary > qemu-iotests: add gdbserver option to script tests too > docs/devel/testing: add -gdb option to the debugging section of QEMU > iotests > qemu-iotests: extend the check script to prepare supporting valgrind > for python tests > qemu-iotests: extend QMP socket timeout when using valgrind > qemu-iotests: allow valgrind to read/delete the generated log file > qemu-iotests: insert valgrind command line as wrapper for qemu binary > docs/devel/testing: add -valgrind option to the debug section of QEMU > iotests > qemu-iotests: add option to show qemu binary logs on stdout > docs/devel/testing: add -p option to the debug section of QEMU > iotests > > John Snow (1): > python: Reduce strictness of pylint's duplicate-code check > > docs/devel/testing.rst | 30 +++++++++++++++++++++ > python/qemu/machine/machine.py | 16 +++++++---- > python/qemu/machine/qtest.py | 9 ++++--- > python/setup.cfg | 5 ++++ > tests/qemu-iotests/check | 15 ++++++++--- > tests/qemu-iotests/common.qemu | 7 ++++- > tests/qemu-iotests/common.rc | 8 +++++- > tests/qemu-iotests/iotests.py | 49 ++++++++++++++++++++++++++++++++-- > tests/qemu-iotests/testenv.py | 23 ++++++++++++++-- > 9 files changed, 144 insertions(+), 18 deletions(-) > > -- > 2.31.1 >
This series adds the option to attach gdbserver and valgrind to the QEMU binary running in qemu_iotests. It also allows to redirect QEMU binaries output of the python tests to the stdout, instead of a log file. Patches 1-9 introduce the -gdb option to both python and bash tests, 10-14 extend the already existing -valgrind flag to work also on python tests, and patch 15-16 introduces -p to enable logging to stdout. In particular, patches 1,6,11 focus on extending the QMP socket timers when using gdb/valgrind, otherwise the python tests will fail due to delays in the QMP responses. Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com> --- v7: * While using debugging tests with gdb, I found out that there is a timer also in bash scripts (common.qemu). Modify patch 8 to remove the timer when gdb is used. Emanuele Giuseppe Esposito (15): python: qemu: add timer parameter for qmp.accept socket python: qemu: pass the wrapper field from QEMUQtestmachine to QEMUMachine docs/devel/testing: add debug section to the QEMU iotests chapter qemu-iotests: add option to attach gdbserver qemu-iotests: delay QMP socket timers qemu_iotests: insert gdbserver command line as wrapper for qemu binary qemu-iotests: add gdbserver option to script tests too docs/devel/testing: add -gdb option to the debugging section of QEMU iotests qemu-iotests: extend the check script to prepare supporting valgrind for python tests qemu-iotests: extend QMP socket timeout when using valgrind qemu-iotests: allow valgrind to read/delete the generated log file qemu-iotests: insert valgrind command line as wrapper for qemu binary docs/devel/testing: add -valgrind option to the debug section of QEMU iotests qemu-iotests: add option to show qemu binary logs on stdout docs/devel/testing: add -p option to the debug section of QEMU iotests John Snow (1): python: Reduce strictness of pylint's duplicate-code check docs/devel/testing.rst | 30 +++++++++++++++++++++ python/qemu/machine/machine.py | 16 +++++++---- python/qemu/machine/qtest.py | 9 ++++--- python/setup.cfg | 5 ++++ tests/qemu-iotests/check | 15 ++++++++--- tests/qemu-iotests/common.qemu | 7 ++++- tests/qemu-iotests/common.rc | 8 +++++- tests/qemu-iotests/iotests.py | 49 ++++++++++++++++++++++++++++++++-- tests/qemu-iotests/testenv.py | 23 ++++++++++++++-- 9 files changed, 144 insertions(+), 18 deletions(-)