On 27/11/23 06:20, Gustavo Romero wrote:
This commit reorganizes the ivshmem-test qtest by moving common structs,
functions, and code that can be utilized by other ivshmem qtests into
two new files: ivshmem-utils.h and ivshmem-utils.c.

Enum Reg, struct ServerThread, and mktempshm() have been relocated to
these new files. Two new functions have been introduced to handle the
ivshmem server start/stop: test_ivshmem_server_{start,stop}.

To accommodate the new way for starting/stopping the ivshmem server,
struct ServerThread now includes two new members: 'server', previously
present but not a member of any struct; and 'status', a new member of a
new type, ServerStartStatus, used to track and handle service
termination properly.

Additionally, a new function, mktempsocket(), has been added to help
create a unix socket filename, similar to what mktempshm() does for the
creation of a shm file.

Finally, the ivshmem-test qtest has been adapted to use the new ivhsmem
utils. Adjustments in that sense have also been made to meson.build;
also 'rt' have been removed as a lib dependency for ivhsmem-test.c.

Two lines unrelated to these changes have had their line indentation
also fixed in meson.build.

Signed-off-by: Gustavo Romero <gustavo.rom...@linaro.org>
---
  tests/qtest/ivshmem-test.c  | 113 ++------------------------
  tests/qtest/ivshmem-utils.c | 155 ++++++++++++++++++++++++++++++++++++
  tests/qtest/ivshmem-utils.h |  56 +++++++++++++
  tests/qtest/meson.build     |   6 +-
  4 files changed, 221 insertions(+), 109 deletions(-)
  create mode 100644 tests/qtest/ivshmem-utils.c
  create mode 100644 tests/qtest/ivshmem-utils.h

LGTM!

Reply via email to