On Fri, 11 Aug 2017 11:49:22 +0200 Cornelia Huck <coh...@redhat.com> wrote:
> On Fri, 11 Aug 2017 07:57:54 +0200 > Thomas Huth <th...@redhat.com> wrote: > > > The first patch improves the buffer handling in the pxe tester a > > little bit by allocating a separate buffer on the heap for each > > architecture. This also gets rid of the huge pre-initialized > > array in the tester, shrinking the size of the executable by > > half of a megabyte! > > The second patch adds s390x support to the pxe tester. Starting > > with QEMU 2.10, the guest firmware on s390x can now net-boot via > > TFTP, too, so we can automatically test this code in the pxe tester. > > > > v2: Adressed Cornelia's review feedback from the first version, e.g.: > > - Use g_malloc0() instead of g_malloc() > > - Use sizeof with parentheses > > > > Thomas Huth (2): > > tests/boot-sector: Do not overwrite the x86 buffer on other > > architectures > > tests/pxe: Check virtio-net-ccw on s390x > > > > tests/Makefile.include | 1 + > > tests/boot-sector.c | 61 > > +++++++++++++++++++++++++++++++++++++------------- > > tests/pxe-test.c | 7 ++++++ > > 3 files changed, 54 insertions(+), 15 deletions(-) > > > > Haven't reviewed the updates yet, but tried it out (on my laptop and on > a z/VM guest). Laptop went fine; on the z/VM guest, I forgot to turn on > vm.allocate_pgste at first: > > TEST: tests/pxe-test... (pid=56084) > /s390x/pxe/virtio-ccw: > ioctl(KVM_CREATE_VM) failed: 22 Invalid argument > Host kernel setup problem detected. Please verify: > - for kernels supporting the switch_amode or user_mode parameters, whether > user space is running in primary address space > - for kernels supporting the vm.allocate_pgste sysctl, whether it is enabled > qemu-system-s390x: failed to initialize KVM: Invalid argument > qemu-system-s390x: Back to tcg accelerator > OK > PASS: tests/pxe-test > > It does the correct fallback (the need for allocate_pgste will go away > with future kernels), so this is fine. However, it prompted me to test > with --disable-tcg: > > TEST: tests/boot-serial-test... (pid=60499) > /s390x/boot-serial/s390-ccw-virtio: > qemu-system-s390x: -machine accel=tcg: No accelerator found > socket_accept failed: Resource temporarily unavailable > ** > ERROR:/root/git/qemu/tests/libqtest.c:212:qtest_init_without_qmp_handshake: > assertion failed: (s->fd >= 0 && s->qmp_fd >= 0) > FAIL > GTester: last random seed: R02S83c8a1860bbd8c2658647407c7070b7e > (pid=60503) > FAIL: tests/boot-serial-test > > There are probably more tests that rely on tcg always being available, > which is no longer true. (Also, the boot-serial test should probably > check if qemu even started rather than run into in a timeout.) > > [Your patches are fine, but I think we really need to consider tests > and accelerators.] A quick test on x86_64 with --disable-tcg showed no further problems than boot-serial-test, so at least it's only the one for now (and it might make sense to simply use accel=tcg:kvm for it).