mbox series

[v6,0/3] tests/qtest/libqos: add DMA support for writing and reading fw_cfg files

Message ID 20250120043847.954881-1-anisinha@redhat.com (mailing list archive)
Headers show
Series tests/qtest/libqos: add DMA support for writing and reading fw_cfg files | expand

Message

Ani Sinha Jan. 20, 2025, 4:38 a.m. UTC
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