On 27/01/2026 01:06, Steve Edmonds wrote:
Hi. I have just joined the group to see if I can resolve a long standing issue with valgrind on Opensuse. I have been using some accounting software for many years, initially it ran fine and then at some point it started causing a segmentation fault.

I then started using it with valgrind, successful with some versions of valgrind and not with others, when it fails I get the following before termination and core dump.

==199084==  Illegal opcode at address 0x453BC82
==199084==    at 0x453BC82: write_vec (xcb_conn.c:262)

Using valgrind from the latest Leap 15.6 and 16.0 repositories fails (valgrind-3.26.0-355.d_t.2.x86_64.rpm, 3.24.0-150600.3.3.1, 3.22.0-150600.1.3, 3.24.0-160000.2.2 and 3.25.1-160000.1.1) I do have the software running successfully with versions 3.25.1-350.d_t.1 (on Leap 15.6) and 3.13.0-lp150.4.61-x86_64 (on Leap 15.0 in a VM). I am trying to get to grips with what might determine a successful version of valgrind, I can no longer locate the rpm for 3.25.1-350.d_t.1 to try on Leap 16.0 and quite happy to build from source if there is some configuration in the source that will resolve this issue.

Hi Steve

Trying older Valgrind versions is unlikely solve the problem.

What application are you trying to run under Valgrind? I just tried Valgrind 3.25.1 on openSUSE LEAP 16.0 running kwrite and there were no major issues.

In gdb (with kwrite again) that piece of code looks like

261     n = *count;
262     if (n > IOV_MAX)
263 n = IOV_MAX;

Nothing unusual in the assembler, like like it is using SSE instructions.

Can you also post the op-code bytes that Valgrind fails to handle?

Lastly, have you built your own copy of libxcb.so.1? If so, did you use any GCC options like -march? There are a few amd64 CPU features that like AVX512 that Valgrind does not support.

Regards

Paul




_______________________________________________
Valgrind-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to