Non-deterministic hang in libvfio-user:functional/test-client-server test causing timeout in CentOS 8 CI job

The 'check-centos-system' GitLab CI job is randomly hitting a 1 hour timeout, when it normally finishes in 12-13 minutes

Two hangs:

In both cases the last things to be printed are the same

242/267 qemu:qtest+qtest-nios2 / qtest-nios2/modules-test             OK              0.54s   14 subtests passed
243/267 libvfio-user:unit / unit_tests                                OK              0.02s
244/267 libvfio-user:functional / test-lspci                          SKIP            0.01s   exit status 77
ERROR: Job failed: execution took longer than 1h0m0s seconds

In a working job

we can see

242/267 qemu:qtest+qtest-nios2 / qtest-nios2/modules-test             OK              0.54s   14 subtests passed
243/267 libvfio-user:unit / unit_tests                                OK              0.03s
244/267 libvfio-user:functional / test-lspci                          SKIP            0.01s   exit status 77
245/267 libvfio-user:functional / test-client-server                  OK             13.72s
246/267 libvfio-user:functional / test-linkage.sh                     OK              1.87s

Meson is being run serialized:

/usr/bin/python3 -B /builds/qemu-project/qemu/meson/meson.py test  --no-rebuild -t 0  --num-processes 1 --print-errorlogs

So it looks pretty clear that there is a non-deterministic hang when running

245/267 libvfio-user:functional / test-client-server                  OK             13.72s

but only on the CentOS 8 CI job.

This test suite arrived via

commit 55116968deb09fdae198cecaa45f4e5532d5445a
Author: Jagannathan Raman <jag.raman@oracle.com>
Date:   Mon Jun 13 16:26:24 2022 -0400

    vfio-user: build library
    
    add the libvfio-user library as a submodule. build it as a meson
    subproject.
    
    libvfio-user is distributed with BSD 3-Clause license and
    json-c with MIT (Expat) license
    
    Signed-off-by: Elena Ufimtseva <elena.ufimtseva@oracle.com>
    Signed-off-by: John G Johnson <john.g.johnson@oracle.com>
    Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
    Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
    Message-id: c2adec87958b081d1dc8775d4aa05c897912f025.1655151679.git.jag.raman@oracle.com
    
    [Changed submodule URL to QEMU's libvfio-user mirror on GitLab. The QEMU
    project mirrors its dependencies so that it can provide full source code
    even in the event that its dependencies become unavailable. Note that
    the mirror repo is manually updated, so please contact me to make newer
    libvfio-user commits available. If I become a bottleneck we can set up a
    cronjob.
    
    Updated scripts/meson-buildoptions.sh to match the meson_options.txt
    change. Failure to do so can result in scripts/meson-buildoptions.sh
    being modified by the build system later on and you end up with a dirty
    working tree.
    --Stefan]
    
    Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>