[Spice-devel] [PATCH spice-server] ci: Workaround bug in Valgrind detecting memcpy instead of memmove

Frediano Ziglio fziglio at redhat.com
Mon Apr 16 16:02:33 UTC 2018


Due to a bug in current packaged Valgrind check-valgrind is failing
with:

==17986== Source and destination overlap in memcpy_chk(0x72c060, 0x72c068, 33)
==17986==    at 0x4C344F0: __memcpy_chk (vg_replace_strmem.c:1581)
==17986==    by 0x40E7E9: check_vmc_error_message (test-stream-device.c:166)
==17986==    by 0x40EFD4: test_stream_device_format_after_data (test-stream-device.c:349)
==17986==    by 0x7A012E9: test_case_run (gtestutils.c:2157)
==17986==    by 0x7A012E9: g_test_run_suite_internal (gtestutils.c:2241)
==17986==    by 0x7A0121A: g_test_run_suite_internal (gtestutils.c:2253)
==17986==    by 0x7A014C1: g_test_run_suite (gtestutils.c:2329)
==17986==    by 0x7A014E0: g_test_run (gtestutils.c:1594)
==17986==    by 0x40951A: main (test-stream-device.c:410)
==17986==

Note that source code calls memmove instead of memcpy (memmove
supports overlapping).
Disable call to __memmove_chk to avoid the issue.

Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
---
This should be temporary till Valgrind is fixed in Fedora.
Was tested by me and Snir.
---
 .gitlab-ci.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 535d220d..655232c2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -34,7 +34,9 @@ check-valgrind:
     dnf install valgrind
     gstreamer1-libav gstreamer1-plugins-ugly gstreamer1-plugins-good gstreamer1-plugins-bad-free
     -y
-  - ./autogen.sh --enable-valgrind --enable-extra-checks
+  - >
+    CFLAGS='-O2 -pipe -g -D_FORTIFY_SOURCE=0'
+    ./autogen.sh --enable-valgrind --enable-extra-checks
   - make
   - make check-valgrind || (cat server/tests/test-suite-memcheck.log && exit 1)
 
-- 
2.14.3



More information about the Spice-devel mailing list