diff mbox series

[Bug,1727250,NEW] qemu-io-test 147 segfaults when configured with gcov

Message ID 150892252192.18283.8177817026945520523.malonedeb@chaenomeles.canonical.com
State New
Headers show
Series [Bug,1727250,NEW] qemu-io-test 147 segfaults when configured with gcov | expand

Commit Message

Nageswara R Sastry Oct. 25, 2017, 9:08 a.m. UTC
Public bug reported:

Head is at 3d7196d43bfe12efe98568cb60057e273652b99b

Steps to re-produce:
1. git clone
./configure --enable-gcov --target-list=ppc64-softmmu
make
cd tests/qemu-iotests

2. export qemu binary, in my environment
export QEMU_PROG=/home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64

3. Run test 147 with format qcow2
./check -qcow2 147

QEMU          -- "/home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64" -nodefaults -machine accel=qtest
QEMU_IMG      -- "/home/nasastry/qemu/qemu-img"
QEMU_IO       -- "/home/nasastry/qemu/qemu-io"  --cache writeback -f qcow2
QEMU_NBD      -- "/home/nasastry/qemu/qemu-nbd"
IMGFMT        -- qcow2 (compat=1.1)
IMGPROTO      -- file
PLATFORM      -- Linux/ppc64le zzfp365-lp1 4.13.0-4.rel.git49564cb.el7.centos.ppc64le
TEST_DIR      -- /home/nasastry/qemu/tests/qemu-iotests/scratch
SOCKET_SCM_HELPER -- /home/nasastry/qemu/tests/qemu-iotests/socket_scm_helper

147 0s ... [failed, exit status 1] - output mismatch (see 147.out.bad)
Failures: 147
Failed 1 of 1 tests

With out gcov configured, the above test get pass.
export QEMU_PROG=/home/nasastry/qemu/ppc64-softmmu/qemu-system-ppc64
./check -qcow2 147
QEMU          -- "/home/nasastry/qemu/ppc64-softmmu/qemu-system-ppc64" -nodefaults -machine accel=qtest
QEMU_IMG      -- "/home/nasastry/qemu/qemu-img"
QEMU_IO       -- "/home/nasastry/qemu/qemu-io"  --cache writeback -f qcow2
QEMU_NBD      -- "/home/nasastry/qemu/qemu-nbd"
IMGFMT        -- qcow2 (compat=1.1)
IMGPROTO      -- file
PLATFORM      -- Linux/ppc64le zzfp365-lp1 4.13.0-4.rel.git49564cb.el7.centos.ppc64le
TEST_DIR      -- /home/nasastry/qemu/tests/qemu-iotests/scratch
SOCKET_SCM_HELPER -- /home/nasastry/qemu/tests/qemu-iotests/socket_scm_helper

147
Passed all 1 tests

** Affects: qemu
     Importance: Undecided
         Status: New

Comments

Thomas Huth Jan. 9, 2018, 5:48 p.m. UTC | #1
The fix was committed:

https://git.qemu.org/?p=qemu.git;a=commitdiff;h=c4365735a7d38f4355c6f77e6670d3972315f7c2

commit c4365735a7d38f4355c6f77e6670d3972315f7c2
Author: Murilo Opsfelder Araujo <muriloo@linux.vnet.ibm.com>
Date:   Fri Jan 5 11:32:41 2018 -0200

    block/nbd: fix segmentation fault when .desc is not null-terminated

** Changed in: qemu
       Status: In Progress => Fix Committed
Thomas Huth April 26, 2018, 10:25 a.m. UTC | #2
** Changed in: qemu
       Status: Fix Committed => Fix Released
diff mbox series

Patch

--- /home/nasastry/qemu/tests/qemu-iotests/147.out	2017-10-25 14:04:54.978600753 +0530
+++ /home/nasastry/qemu/tests/qemu-iotests/147.out.bad	2017-10-25 14:09:53.769783770 +0530
@@ -1,5 +1,95 @@ 
-......
+WARNING:qemu:qemu received signal -11: /home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64 -chardev socket,id=mon,path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-monitor.sock -mon chardev=mon,mode=control -display none -vga none -qtest unix:path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-qtest.sock -machine accel=qtest -nodefaults -machine accel=qtest
+WARNING:qemu:qemu received signal -11: /home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64 -chardev socket,id=mon,path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-monitor.sock -mon chardev=mon,mode=control -display none -vga none -qtest unix:path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-qtest.sock -machine accel=qtest -nodefaults -machine accel=qtest
+WARNING:qemu:qemu received signal -11: /home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64 -chardev socket,id=mon,path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-monitor.sock -mon chardev=mon,mode=control -display none -vga none -qtest unix:path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-qtest.sock -machine accel=qtest -nodefaults -machine accel=qtest
+WARNING:qemu:qemu received signal -11: /home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64 -chardev socket,id=mon,path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-monitor.sock -mon chardev=mon,mode=control -display none -vga none -qtest unix:path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-qtest.sock -machine accel=qtest -nodefaults -machine accel=qtest
+WARNING:qemu:qemu received signal -11: /home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64 -chardev socket,id=mon,path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-monitor.sock -mon chardev=mon,mode=control -display none -vga none -qtest unix:path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-qtest.sock -machine accel=qtest -nodefaults -machine accel=qtest
+WARNING:qemu:qemu received signal -11: /home/nasastry/qemu_gcov/ppc64-softmmu/qemu-system-ppc64 -chardev socket,id=mon,path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-monitor.sock -mon chardev=mon,mode=control -display none -vga none -qtest unix:path=/home/nasastry/qemu/tests/qemu-iotests/scratch/qemu-28636-qtest.sock -machine accel=qtest -nodefaults -machine accel=qtest
+FFFFFF
+======================================================================
+FAIL: test_fd (__main__.BuiltinNBD)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "147", line 203, in test_fd
+    self.client_test(filename, flatten_sock_addr(address), 'nbd-export')
+  File "147", line 55, in client_test
+    self.assert_qmp(result, 'return', {})
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 315, in assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 274, in dictpath
+    self.fail('failed path traversal for "%s" in "%s"' % (path, str(d)))
+AssertionError: failed path traversal for "return" in "None"
+
+======================================================================
+FAIL: test_inet (__main__.BuiltinNBD)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "147", line 146, in test_inet
+    flatten_sock_addr(address), 'nbd-export')
+  File "147", line 55, in client_test
+    self.assert_qmp(result, 'return', {})
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 315, in assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 274, in dictpath
+    self.fail('failed path traversal for "%s" in "%s"' % (path, str(d)))
+AssertionError: failed path traversal for "return" in "None"
+
+======================================================================
+FAIL: test_inet6 (__main__.BuiltinNBD)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "147", line 171, in test_inet6
+    self.client_test(filename, flatten_sock_addr(address), 'nbd-export')
+  File "147", line 55, in client_test
+    self.assert_qmp(result, 'return', {})
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 315, in assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 274, in dictpath
+    self.fail('failed path traversal for "%s" in "%s"' % (path, str(d)))
+AssertionError: failed path traversal for "return" in "None"
+
+======================================================================
+FAIL: test_unix (__main__.BuiltinNBD)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "147", line 179, in test_unix
+    flatten_sock_addr(address), 'nbd-export')
+  File "147", line 55, in client_test
+    self.assert_qmp(result, 'return', {})
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 315, in assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 274, in dictpath
+    self.fail('failed path traversal for "%s" in "%s"' % (path, str(d)))
+AssertionError: failed path traversal for "return" in "None"
+
+======================================================================
+FAIL: test_inet (__main__.QemuNBD)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "147", line 96, in test_inet
+    flatten_sock_addr(address))
+  File "147", line 55, in client_test
+    self.assert_qmp(result, 'return', {})
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 315, in assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 274, in dictpath
+    self.fail('failed path traversal for "%s" in "%s"' % (path, str(d)))
+AssertionError: failed path traversal for "return" in "None"
+
+======================================================================
+FAIL: test_unix (__main__.QemuNBD)
+----------------------------------------------------------------------
+Traceback (most recent call last):
+  File "147", line 103, in test_unix
+    flatten_sock_addr(address))
+  File "147", line 55, in client_test
+    self.assert_qmp(result, 'return', {})
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 315, in assert_qmp
+    result = self.dictpath(d, path)
+  File "/home/nasastry/qemu/tests/qemu-iotests/iotests.py", line 274, in dictpath
+    self.fail('failed path traversal for "%s" in "%s"' % (path, str(d)))
+AssertionError: failed path traversal for "return" in "None"
+
 ----------------------------------------------------------------------
 Ran 6 tests

-OK
+FAILED (failures=6)