v2: * Use qemu-iotests 083 test number to avoid conflicts [kwolf] * Test class negotiation without export name [lupine] * Test short replies from the server [lupine]
The first patch ensures the nbd_receive_reply() fd handler is unregistered when the connection to the server breaks. This avoids high CPU consumption and flooding error messages. The second patch introduces an NBD server fault injection script. Using this fake NBD server it is possible to exercise error handling code paths in the NBD client. The third patch adds qemu-iotests test case 083 to verify qemu-io exits with an error at each point where the connection can break. Stefan Hajnoczi (3): nbd: close socket if connection breaks tests: add nbd-fault-injector.py utility qemu-iotests: add 083 NBD client disconnect tests block/nbd-client.c | 33 ++-- tests/qemu-iotests/083 | 129 +++++++++++++++ tests/qemu-iotests/083.out | 163 +++++++++++++++++++ tests/qemu-iotests/group | 1 + tests/qemu-iotests/nbd-fault-injector.py | 264 +++++++++++++++++++++++++++++++ 5 files changed, 575 insertions(+), 15 deletions(-) create mode 100755 tests/qemu-iotests/083 create mode 100644 tests/qemu-iotests/083.out create mode 100755 tests/qemu-iotests/nbd-fault-injector.py -- 1.8.5.3