Package: valgrind
Version: 1:3.20.0-2.1
Severity: normal
Tags: upstream patch
X-Debbugs-Cc: mar...@meltin.net

Dear Maintainer,

Doing developer testing on Samba's CTDB component and (at least) one
of its tests failed unexpectedly when running under "valgrind -q".

The code flow where valgrind reliably fails is like this:

==30742== Source and destination overlap in memcpy_chk(0x1ffefff608, 
0x1ffefff602, 8)
==30742==    at 0x4852152: __memcpy_chk (vg_replace_strmem.c:1746)
==30742==    by 0x4C5F004: memmove (string_fortified.h:36)
==30742==    by 0x4C5F004: inet_pton6 (inet_pton.c:226)
==30742==    ...

This error is independent of the CTDB code, since the error is
occurring in inet_pton(3).  memmove(3) is supposed to allow overlaps:

  The memmove() function copies n bytes from memory area src to memory
  area dest.  The memory areas may overlap: [...]

... so, the valgrind failure should not occur.

I built various valgrind versions from upstream source and it appears
this was fixed/worked-around upstream between versions 3.21.0 and
3.22.0.  The exact upstream commit that fixes the issues is
53e101f562fa89bbf92d658fba626e2397862a16 (hence, use of the "patch"
tag on this bug).  There may be a better solution.

Upgrading valgrind in Debian to the latest stable upstream version
(3.24.0) would fix the problem.

Thanks...

peace & happiness,
martin

-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (990, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.9-rt-amd64 (SMP w/12 CPU threads; PREEMPT)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8),
LANGUAGE=en_AU:en Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages valgrind depends on:
ii  libc6      2.40-5
ii  libc6-dbg  2.40-5

Versions of packages valgrind recommends:
ii  gdb           15.2-1+b1
pn  valgrind-dbg  <none>

Versions of packages valgrind suggests:
pn  kcachegrind   <none>
pn  valgrind-mpi  <none>

-- no debconf information

Reply via email to