This patchset enables DMA interface support for writing fw-cfg files in
libqtest. The first patch is just a code refactoring so that fw-cfg
directory parsing can be part of a separate helper function.
The second patch is the actual patch that introduces two new apis for
writing and reading fw-cfg files using DMA interface. The apis are
tested by writing a new basic qtest for vmcoreinfo device in patch 3.
$ MALLOC_PERTURB_=255 QTEST_QEMU_BINARY=./qemu-system-x86_64 /workspace/qemu-ani/build/tests/qtest/vmcoreinfo-test
TAP version 13
# random seed: R02S33ea0ae4568aae69a6191a97e6ea37fc
1..1
# Start of x86_64 tests
# Start of vmcoreinfo tests
# starting QEMU: exec ./qemu-system-x86_64 -qtest unix:/tmp/qtest-267380.sock -qtest-log /dev/null -chardev socket,path=/tmp/qtest-267380.qmp,id=char0 -mon chardev=char0,mode=control -display none -audio none -device vmcoreinfo -accel qtest
ok 1 /x86_64/vmcoreinfo/basic-write
# End of vmcoreinfo tests
# End of x86_64 tests
CI pipeline is green with this patch series: https://gitlab.com/anisinha/qemu/-/pipelines/1629670893
checkpatch is clean:
$ ./scripts/checkpatch.pl patches-v6/*
Checking patches-v6/v6-0000-cover-letter.patch...
total: 0 errors, 0 warnings, 0 lines checked
patches-v6/v6-0000-cover-letter.patch has no obvious style problems and is ready for submission.
Checking patches-v6/v6-0001-libqos-fw_cfg-refactor-file-directory-iteraton-to.patch...
total: 0 errors, 0 warnings, 80 lines checked
patches-v6/v6-0001-libqos-fw_cfg-refactor-file-directory-iteraton-to.patch has no obvious style problems and is ready for submission.
Checking patches-v6/v6-0002-tests-qtest-libqos-add-DMA-support-for-writing-an.patch...
total: 0 errors, 0 warnings, 175 lines checked
patches-v6/v6-0002-tests-qtest-libqos-add-DMA-support-for-writing-an.patch has no obvious style problems and is ready for submission.
Checking patches-v6/v6-0003-tests-qtest-vmcoreinfo-add-a-unit-test-to-exerciz.patch...
total: 0 errors, 0 warnings, 111 lines checked
patches-v6/v6-0003-tests-qtest-vmcoreinfo-add-a-unit-test-to-exerciz.patch has no obvious style problems and is ready for submission.
cc: kraxel@redhat.com
cc: farosas@suse.de
cc: lvivier@redhat.com
cc: pbonzini@redhat.com
cc: armbru@redhat.com
cc: philmd@linaro.org
cc: berrange@redhat.com
cc: qemu-devel@nongnu.org
cc: farosas@suse.de
changelog:
v3: first working version of the patch.
v4: refactoring without any new changes put into a new patch.
v5: a new qtest added to exercize the two new write and read apis.
v6: minor, coding style changed to standard qemu func prototype style -
phil's sugestion. tags added and rebased to the latest.
all along, other review feedbacks has been taken into account.
Ani Sinha (3):
libqos/fw_cfg: refactor file directory iteraton to make it more
reusable
tests/qtest/libqos: add DMA support for writing and reading fw_cfg
files
tests/qtest/vmcoreinfo: add a unit test to exercize basic vmcoreinfo
function
MAINTAINERS | 2 +
tests/qtest/libqos/fw_cfg.c | 202 ++++++++++++++++++++++++++++++----
tests/qtest/libqos/fw_cfg.h | 6 +-
tests/qtest/meson.build | 1 +
tests/qtest/vmcoreinfo-test.c | 90 +++++++++++++++
5 files changed, 277 insertions(+), 24 deletions(-)
create mode 100644 tests/qtest/vmcoreinfo-test.c
--
2.45.2