]> sourceware.org Git - valgrind.git/log
valgrind.git
10 months agoFreeBSD: another reachable suppression, for getgrnam this time
Paul Floyd [Tue, 12 Dec 2023 17:01:53 +0000 (18:01 +0100)]
FreeBSD: another reachable suppression, for getgrnam this time

10 months agoFreeBSD: add suppressions for still reachable memory when using getaddrinfo
Paul Floyd [Tue, 12 Dec 2023 16:41:38 +0000 (17:41 +0100)]
FreeBSD: add suppressions for still reachable memory when using getaddrinfo

Also add a couple of attributions for my recent memccpy changes.

10 months agoAdd a redir for memccpy
Paul Floyd [Sat, 9 Dec 2023 19:54:53 +0000 (20:54 +0100)]
Add a redir for memccpy

11 months agoAdd bug 478211 to NEWS
Mark Wielaard [Fri, 8 Dec 2023 13:32:48 +0000 (14:32 +0100)]
Add bug 478211 to NEWS

Commit ec73dcb18 remote-utils-shared: Created files for sharing code

11 months agoremote-utils-shared: Created files for sharing code
Alexandra Petlanova Hajkova [Wed, 6 Dec 2023 08:14:53 +0000 (03:14 -0500)]
remote-utils-shared: Created files for sharing code

between vgdb.c and m_gdbserver/server.c. This removes code
redundancies that was introduced for vgdb.c by vgdb --multi
implementation.

11 months agocoverity: mostly deadcode warnings that depend on platform macros
Paul Floyd [Mon, 4 Dec 2023 08:16:37 +0000 (09:16 +0100)]
coverity: mostly deadcode warnings that depend on platform macros

So just turn them off

11 months agoAdd fchmodat2 syscall on linux
Mark Wielaard [Sat, 18 Nov 2023 20:17:02 +0000 (21:17 +0100)]
Add fchmodat2 syscall on linux

fchmodat2 is a new syscall on linux 6.6. It is a variant of fchmodat
that takes an extra flags argument.

https://bugs.kde.org/show_bug.cgi?id=477198

11 months agovgdb.c: Encode the qRcmd reply as hex string
Alexandra Petlanova Hajkova [Wed, 29 Nov 2023 10:40:13 +0000 (05:40 -0500)]
vgdb.c: Encode the qRcmd reply as hex string

When vgdb replies to qRcmd packet recieved from GDB, it
used to send the reply as simple string. This is wrong,
GDB expects to get a hex encoded string.

https://bugs.kde.org/show_bug.cgi?id=477719

11 months agocoverity: deadcode and unsigned comparison with 0 warnings
Paul Floyd [Tue, 28 Nov 2023 08:03:22 +0000 (09:03 +0100)]
coverity: deadcode and unsigned comparison with 0 warnings

11 months ago(really) Bug 477630 - Include ucontext.h rather than sys/ucontext.h in Solaris sources
Paul Floyd [Tue, 28 Nov 2023 07:33:08 +0000 (08:33 +0100)]
(really) Bug 477630 - Include ucontext.h rather than sys/ucontext.h in Solaris sources

Mixed up my patches and the previous commit should have been
Bug 477628 - Add mremap support for Solaris

Patch provided by
   Jakub Kulik kulikjak@gmail.com

11 months agoBug 477630 - Include ucontext.h rather than sys/ucontext.h in Solaris sources
Paul Floyd [Tue, 28 Nov 2023 07:00:19 +0000 (08:00 +0100)]
Bug 477630 - Include ucontext.h rather than sys/ucontext.h in Solaris sources

Patch provided by
   Jakub Kulik kulikjak@gmail.com

11 months agocoverity: a few more unsigned comparisons and unused return values
Paul Floyd [Mon, 27 Nov 2023 08:52:06 +0000 (09:52 +0100)]
coverity: a few more unsigned comparisons and unused return values

11 months agolauncher-linux.c (find_client): barf if we don't have read permission for executable
Mark Wielaard [Sun, 26 Nov 2023 17:22:01 +0000 (18:22 +0100)]
launcher-linux.c (find_client): barf if we don't have read permission for executable

For such an executable valgrind will now report:

valgrind: Cannot continue: Need read permission on /usr/local/bin/exec-no-read

https://bugs.kde.org/show_bug.cgi?id=281059

11 months agoDarwin: clean up 3 warnings
Paul Floyd [Sun, 26 Nov 2023 12:52:32 +0000 (13:52 +0100)]
Darwin: clean up 3 warnings

11 months agoFreeBSD regtest: make aio test more robust
Paul Floyd [Sun, 26 Nov 2023 09:23:34 +0000 (10:23 +0100)]
FreeBSD regtest: make aio test more robust

Had to remove a few of the errors - seems to me that aio errors
are not handled well by the FreeBSD kernel. E.g., it looks
like the error state doesn't get cleared by aio_return.

11 months agoFreeBSD regtest: new aio test sometimes hangs in infinite aio_error loop
Paul Floyd [Thu, 23 Nov 2023 06:45:09 +0000 (07:45 +0100)]
FreeBSD regtest: new aio test sometimes hangs in infinite aio_error loop

Put a limit on the loop. Need to check if this is not a problem with
aio_read corrupting memory.

11 months agoDarwin: add sigwait syscall wrapper
Paul Floyd [Thu, 23 Nov 2023 06:24:11 +0000 (07:24 +0100)]
Darwin: add sigwait syscall wrapper

The FreeBSD testcase doesn't work, but the problem seems
to be with the initial signal()/raise(). Needs more work.

11 months agocoverity: unsigned comparisons with 0
Paul Floyd [Wed, 22 Nov 2023 20:22:18 +0000 (21:22 +0100)]
coverity: unsigned comparisons with 0

11 months agoFreeBSD: wrong level of indirection and unsigned >= 0 comparison
Paul Floyd [Wed, 22 Nov 2023 08:08:30 +0000 (09:08 +0100)]
FreeBSD: wrong level of indirection and unsigned >= 0 comparison

11 months agocoverity: unreachable and unused
Paul Floyd [Wed, 22 Nov 2023 07:19:47 +0000 (08:19 +0100)]
coverity: unreachable and unused

11 months agoarm64: remove a couple of lines of dead code
Paul Floyd [Tue, 21 Nov 2023 21:05:40 +0000 (22:05 +0100)]
arm64: remove a couple of lines of dead code

11 months agompi: remove NULL checks before frees
Paul Floyd [Tue, 21 Nov 2023 20:58:36 +0000 (21:58 +0100)]
mpi: remove NULL checks before frees

As Coverity points out, paths reaching these NULL checks will
have already dereferenced the pointers. So use the same condition
as for the allocation.

11 months agoDarwin: another csrctl change
Paul Floyd [Mon, 20 Nov 2023 21:28:43 +0000 (22:28 +0100)]
Darwin: another csrctl change

Still getting asserts on x86 probably due to 64 bit arguments
(none of the Darwin syscalls are split into x86 / amd64 with
MERGEs for x86).

11 months agoDarwin: missing defines to go with previous change
Paul Floyd [Mon, 20 Nov 2023 20:42:01 +0000 (21:42 +0100)]
Darwin: missing defines to go with previous change

11 months agoDarwin: try to fix csrctl syscall wrapper
Paul Floyd [Mon, 20 Nov 2023 20:37:10 +0000 (21:37 +0100)]
Darwin: try to fix csrctl syscall wrapper

memcheck/tests/x86/xor-undef fails with
+valgrind: m_syswrap/syswrap-darwin.c:9810 (void vgSysWrap_darwin_csrctl_before(ThreadId, SyscallArgLayout *, SyscallArgs *, SyscallStatus *, UWord *)): Assertion 'sizeof(user_addr_t) <= sizeof(RegWord)' failed.
(on macOS 10.13)

Change copied from
   https://github.com/LouisBrunner/valgrind-macos

11 months agoDarwin regtest: add testcase for bug390269
Paul Floyd [Mon, 20 Nov 2023 12:52:30 +0000 (13:52 +0100)]
Darwin regtest: add testcase for bug390269

11 months agoDarwin: openat(_nocancel) fixes
Paul Floyd [Mon, 20 Nov 2023 12:31:37 +0000 (13:31 +0100)]
Darwin: openat(_nocancel) fixes

One wrong warning string and missing macro declarations

11 months agoDarwin: add suppressions for a couple of crypto functions
Paul Floyd [Mon, 20 Nov 2023 12:19:08 +0000 (13:19 +0100)]
Darwin: add suppressions for a couple of crypto functions

11 months agoDarwin: add missing define for VKI_AT_FDCWD
Paul Floyd [Mon, 20 Nov 2023 12:18:22 +0000 (13:18 +0100)]
Darwin: add missing define for VKI_AT_FDCWD

11 months agoBug 390269 - unhandled amd64-darwin syscall: unix:464 (openat_nocancel)
Paul Floyd [Mon, 20 Nov 2023 11:59:12 +0000 (12:59 +0100)]
Bug 390269 - unhandled amd64-darwin syscall: unix:464 (openat_nocancel)

Copied from https://github.com/LouisBrunner/valgrind-macos.git

Regtest to come shortly

11 months agoBug 428364 - Signals inside io_uring_enter not handled
Paul Floyd [Sat, 18 Nov 2023 12:02:30 +0000 (13:02 +0100)]
Bug 428364 - Signals inside io_uring_enter not handled

Patch provide by
    Andrew Soutar kdebugtraq@andrewsoutar.com
Thanks!

I haven't added the reproducers as they require interrupting
the Valgrind process. Maybe the tests can be adapted to use
fork and have the parent kill the child running io_uring.

11 months agolinux helgrind: broaden __printf_buffer_write suppression
Paul Floyd [Sat, 18 Nov 2023 10:34:09 +0000 (11:34 +0100)]
linux helgrind: broaden __printf_buffer_write suppression

On Fedora 39 pth_mempcpy_false_races was failing because
the callstack now has an extra inline and memcpy is versioned

11 months agoBug 466884 - Missing writev uninit padding suppression for _XSend
Paul Floyd [Sat, 18 Nov 2023 08:38:25 +0000 (09:38 +0100)]
Bug 466884 - Missing writev uninit padding suppression for _XSend

11 months agoBug 476548 - valgrind 3.22.0 fails on assertion when loading debuginfo file produced...
Paul Floyd [Sat, 18 Nov 2023 07:49:34 +0000 (08:49 +0100)]
Bug 476548 - valgrind 3.22.0 fails on assertion when loading debuginfo file produced by mold

11 months agoFreeBSD: make warnings about casting away volatile go away
Paul Floyd [Sat, 18 Nov 2023 07:30:56 +0000 (08:30 +0100)]
FreeBSD: make warnings about casting away volatile go away

11 months agofreebsd: unused variable warning
Paul Floyd [Sat, 18 Nov 2023 07:23:08 +0000 (08:23 +0100)]
freebsd: unused variable warning

still not sure what to do in aio_cancel

11 months agodarwin: syswrap-darwin.c warning cleanup
Paul Floyd [Sat, 18 Nov 2023 07:21:52 +0000 (08:21 +0100)]
darwin: syswrap-darwin.c warning cleanup

11 months agoDarwin: remove global variable used in aio_return
Paul Floyd [Sat, 18 Nov 2023 06:34:00 +0000 (07:34 +0100)]
Darwin: remove global variable used in aio_return

This was using a global variable to signify a read success
between pre- and post- aio_return. I don't think that this
was safe. There could be multiple calls to aio_return on
different threads. The global aiocpb_table is safe enough
as the pointers to control block are unique. However if two
threads manipulate was_a_successful_aio_read there's no way
of telling them apart. Rather than trying to make
was_a_successful_aio_read thread safe I did the same as on
FreeBSD and removed post- aio_return and now do everything
in pre- aio_return. No global variable, no thread hazard.

11 months agoFreeBSD regtest: unused variable warning
Paul Floyd [Sat, 18 Nov 2023 06:05:42 +0000 (07:05 +0100)]
FreeBSD regtest: unused variable warning

And ensure that the output string is always terminated.

11 months agosyswrap renameat2 on ppc32, mips32 and mips64 linux
Mark Wielaard [Sat, 18 Nov 2023 01:43:36 +0000 (02:43 +0100)]
syswrap renameat2 on ppc32, mips32 and mips64 linux

11 months agosyswrap preadv2 and pwritev2 also on ppc32-linux
Mark Wielaard [Sat, 18 Nov 2023 01:31:02 +0000 (02:31 +0100)]
syswrap preadv2 and pwritev2 also on ppc32-linux

11 months agos390x-linux also has memfd_secret, syswrap it
Mark Wielaard [Sat, 18 Nov 2023 01:23:10 +0000 (02:23 +0100)]
s390x-linux also has memfd_secret, syswrap it

11 months agosyswrap openat2 for all linux arches
Mark Wielaard [Sat, 18 Nov 2023 01:07:35 +0000 (02:07 +0100)]
syswrap openat2 for all linux arches

11 months agosupport pidfd_getfd
Ali Polatel [Wed, 18 Oct 2023 12:55:12 +0000 (12:55 +0000)]
support pidfd_getfd

Signed-off-by: Ali Polatel <alip@chesswob.org>
11 months agovalgrind-monitor.py regular expressions should use raw strings
Mark Wielaard [Fri, 17 Nov 2023 12:31:52 +0000 (13:31 +0100)]
valgrind-monitor.py regular expressions should use raw strings

With python 3.12 gdb will produce the following SyntaxWarning when
loading valgrind-monitor-def.py:

  /usr/share/gdb/auto-load/valgrind-monitor-def.py:214:
  SyntaxWarning: invalid escape sequence '\['
    if re.fullmatch("^0x[0123456789ABCDEFabcdef]+\[[^\[\]]+\]$", arg_str):

In a future python version this will become an SyntaxError.

Use a raw strings for the regular expression.

https://bugs.kde.org/show_bug.cgi?id=476708

11 months agofreebsd regtest: update expected
Paul Floyd [Fri, 17 Nov 2023 07:04:14 +0000 (08:04 +0100)]
freebsd regtest: update expected

hadn't rebuilt the test exe after changes

11 months agoBug 476887 - WARNING: unhandled amd64-freebsd syscall: 578
Paul Floyd [Thu, 16 Nov 2023 20:33:33 +0000 (21:33 +0100)]
Bug 476887 - WARNING: unhandled amd64-freebsd syscall: 578

Adds syscall wrappers for aio_readv and aio_writev
Also rewrote the wrappers for aio_read, aio_write and aio_return
as they weren't correctly checking the async memory.

The code is similar th that of Darwin with one exception.
Darwin uses a global variable to communicate between the
pre- and post- aio_return wrappers. I don't think that is
safe when there are multiple aio reads in flight. Instead
I put everything in the pre- aio_return wrapper.

11 months agoFix memcheck/tests/darwin/Makefile.am EXTRA_DIST typo
Mark Wielaard [Tue, 14 Nov 2023 22:57:04 +0000 (23:57 +0100)]
Fix memcheck/tests/darwin/Makefile.am EXTRA_DIST typo

bug437790.stderr.out should have been bug437790.stdout.exp

11 months agoBug 437790 - valgrind reports "Conditional jump or move depends on uninitialised...
Paul Floyd [Tue, 14 Nov 2023 07:30:05 +0000 (08:30 +0100)]
Bug 437790 - valgrind reports "Conditional jump or move depends on uninitialised value" in memchr of macOS 10.12-10.15

11 months agolinux regtest: typo in EXTRA_DIST
Paul Floyd [Mon, 13 Nov 2023 12:33:26 +0000 (13:33 +0100)]
linux regtest: typo in EXTRA_DIST

11 months agoBug 476780 - Extend strlcat and strlcpy wrappers to GNU libc (part 2)
Paul Floyd [Sun, 12 Nov 2023 21:11:52 +0000 (22:11 +0100)]
Bug 476780 - Extend strlcat and strlcpy wrappers to GNU libc (part 2)

Linux regtest

11 months agoBug 476780 - Extend strlcat and strlcpy wrappers to GNU libc
Paul Floyd [Sun, 12 Nov 2023 17:07:52 +0000 (18:07 +0100)]
Bug 476780 - Extend strlcat and strlcpy wrappers to GNU libc

Will add Linux regtest soon

11 months agoBug 476787 - Build of Valgrind 3.21.0 fails when SOLARIS_PT_SUNDWTRACE_THRP is defined
Paul Floyd [Fri, 10 Nov 2023 16:56:52 +0000 (17:56 +0100)]
Bug 476787 - Build of Valgrind 3.21.0 fails when SOLARIS_PT_SUNDWTRACE_THRP is defined

Patch provided by
   Jakub Kulik kulikjak@gmail.com

11 months agoBug 460616 - Add support for aarch64 dotprod instructions
William Ashley [Fri, 10 Nov 2023 16:51:12 +0000 (17:51 +0100)]
Bug 460616 - Add support for aarch64 dotprod instructions

This change adds support for the FEAT_DotProd instructions
SDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>]
SDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb>
UDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>]
UDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb>

11 months agoregtest: bug401284.c should never cast the return of malloc in C
Paul Floyd [Fri, 10 Nov 2023 06:39:00 +0000 (07:39 +0100)]
regtest: bug401284.c should never cast the return of malloc in C

11 months agofilter out dl-start.S: No such file or directory in gdbserver_tests
Mark Wielaard [Thu, 9 Nov 2023 22:42:37 +0000 (23:42 +0100)]
filter out dl-start.S: No such file or directory in gdbserver_tests

On some aarch64 GNU/Linux systems gdb will be unable to find the
dl-start.S file and complain. Filter out this message to make the
tests pass.

11 months agoBug 401284 - False positive "Source and destination overlap in strncat"
Paul Floyd [Thu, 9 Nov 2023 21:19:43 +0000 (22:19 +0100)]
Bug 401284 - False positive "Source and destination overlap in strncat"

Need to also look at strlcat and plain strcat.

11 months agoregtest: add a deliberately false address to drd and helgrind getaddrinfo
Paul Floyd [Thu, 9 Nov 2023 19:43:55 +0000 (20:43 +0100)]
regtest: add a deliberately false address to drd and helgrind getaddrinfo

Make sure that at least one call fails.

11 months agolinux regtest: reallocarray was only added in glibc 2.29
Paul Floyd [Thu, 9 Nov 2023 19:16:10 +0000 (20:16 +0100)]
linux regtest: reallocarray was only added in glibc 2.29

Add a feature check

11 months agoBug 475498 - Add reallocarray wrapper
Paul Floyd [Thu, 9 Nov 2023 06:58:02 +0000 (07:58 +0100)]
Bug 475498 - Add reallocarray wrapper

12 months agomassif regtest: add an existence check to overloaded-new
Paul Floyd [Mon, 6 Nov 2023 07:10:27 +0000 (08:10 +0100)]
massif regtest: add an existence check to overloaded-new

For old old compilers that don't have aligned new

12 months agomassif regtest: add 'pool' to ignore functions for Arch Linux
Paul Floyd [Sun, 5 Nov 2023 13:00:51 +0000 (13:00 +0000)]
massif regtest: add 'pool' to ignore functions for Arch Linux

12 months agomassif regtest: typo in Makefile.am
Paul Floyd [Sun, 5 Nov 2023 12:45:59 +0000 (13:45 +0100)]
massif regtest: typo in Makefile.am

12 months agoBug 476535 - Difference in allocation size for massif/tests/overloaded-new between...
Paul Floyd [Sun, 5 Nov 2023 12:35:01 +0000 (13:35 +0100)]
Bug 476535 - Difference in allocation size for massif/tests/overloaded-new between clang++/libc++ and g++/libstdc++

In the end all I could do was filter the results.

libc++ and libstdc++ allocate different sizes of stuff for their own usr.
That means that when we get to allocating aligned blocks there is some
slop (up to the alignment size) that gets counted. And the amount of
that slop depends on the prior (internal) allocations.

12 months agomassif regtest: stray space in expected
Paul Floyd [Sun, 5 Nov 2023 10:03:16 +0000 (11:03 +0100)]
massif regtest: stray space in expected

12 months agomassif regtest: make verbose tests work on both 32bit and 64bit
Paul Floyd [Sun, 5 Nov 2023 09:59:43 +0000 (10:59 +0100)]
massif regtest: make verbose tests work on both 32bit and 64bit

Now alloc fns only have the appropriate new overloads which
means 32bit has unsigned size but 64bit has unsigned long.
Filter the unsigned long to unsigned.

12 months agomassif regtest: update aloc fns in verbose expecteds
Paul Floyd [Sun, 5 Nov 2023 09:25:09 +0000 (10:25 +0100)]
massif regtest: update aloc fns in verbose expecteds

12 months agomassif regtest: try adding a new expected for overloaded-new
Paul Floyd [Sun, 5 Nov 2023 09:06:56 +0000 (09:06 +0000)]
massif regtest: try adding a new expected for overloaded-new

Added a filter for "pool" that's used on Arch Linux
I'm not too confident that the new expected will work for
all architectures or even versions of libstdc++

12 months agomassif: clean up alloc functions
Paul Floyd [Sun, 5 Nov 2023 08:30:18 +0000 (09:30 +0100)]
massif: clean up alloc functions

Missed out aligned_alloc
Left in the alignment argument name and didn't use east const for
nothrow.

12 months agomassif regtest: keep churning with overloaded-new test
Paul Floyd [Sat, 4 Nov 2023 15:35:05 +0000 (16:35 +0100)]
massif regtest: keep churning with overloaded-new test

Solaris 11.3 doesn't have aligned_alloc so remove it.

In any case I think it's better to use dummy allocators since
that means there is no risk of accidentally falling through
to malloc/free.

12 months agomassif regtest: use the correct aligned delete overloads
Paul Floyd [Sat, 4 Nov 2023 07:26:57 +0000 (08:26 +0100)]
massif regtest: use the correct aligned delete overloads

Still trying to see why libstdc++ and libc++ allocate different amounts

12 months agomassif regtest: remove overloaded-new.post.exp-freebsd
Paul Floyd [Fri, 3 Nov 2023 21:41:03 +0000 (22:41 +0100)]
massif regtest: remove overloaded-new.post.exp-freebsd

There was a duplicate at the end of the list

12 months agomassif regtest: fix building aligned new overloads with pre-C++17 compilers
Paul Floyd [Fri, 3 Nov 2023 21:23:26 +0000 (22:23 +0100)]
massif regtest: fix building aligned new overloads with pre-C++17 compilers

12 months agoFreeBSD: remove some massif regtest expecteds
Paul Floyd [Fri, 3 Nov 2023 20:46:13 +0000 (21:46 +0100)]
FreeBSD: remove some massif regtest expecteds

These were added mainly to have a cleanish slate with GCC on FreeBSD.
Unfortunately FreeBSD doesn't have dependent packages, so no debuginfo
for libstdc++ and the GCC port libstdc++ is stripped. That means that
the filters for internal GCC allocations don't work.

Since I hardly use GCC any more I'm getting rid of these expecteds.

12 months agomassif: add C++ aligned operator new to allocator functions
Paul Floyd [Fri, 3 Nov 2023 20:40:22 +0000 (21:40 +0100)]
massif: add C++ aligned operator new to allocator functions

Also make the unsigned (32bit) and unsigned long (64bit) for size_t
conditional on the wordsize.

12 months agoDo not run memcheck/tests/x86-linux/scalar when root
Mark Wielaard [Thu, 2 Nov 2023 18:50:07 +0000 (19:50 +0100)]
Do not run memcheck/tests/x86-linux/scalar when root

The test expects some syscalls to fail, but when run as root
the user actually has permission to do silly things. So skip
the test if we notice we are root.

12 months agoNon-FreeBSD regtest: fix build of memcheck/tests/x86/pcmpgt
Paul Floyd [Wed, 1 Nov 2023 19:20:38 +0000 (19:20 +0000)]
Non-FreeBSD regtest: fix build of memcheck/tests/x86/pcmpgt

As suggested by Mark Wielaard. It looks like AM conditionals
behave as though they have an implicit, empty, else.

12 months agoBug 476320 - Build failure with GCC
Paul Floyd [Wed, 1 Nov 2023 09:59:08 +0000 (10:59 +0100)]
Bug 476320 - Build failure with GCC

A few fixes for building regression tests with GCC on FreeBSD.

12 months agoUpdate version to 3.23.0.GIT, split NEWS files and create NEWS.older
Paul Floyd [Wed, 1 Nov 2023 09:56:39 +0000 (10:56 +0100)]
Update version to 3.23.0.GIT, split NEWS files and create NEWS.older

12 months ago-> 3.22.0 final VALGRIND_3_22_0
Mark Wielaard [Tue, 31 Oct 2023 17:19:05 +0000 (18:19 +0100)]
-> 3.22.0 final

12 months agoregtest: run memcheck overlap test on non-linux amd64 platforms
Paul Floyd [Tue, 31 Oct 2023 08:00:19 +0000 (09:00 +0100)]
regtest: run memcheck overlap test on non-linux amd64 platforms

12 months agoDisable memcpy overlap check and test on amd64 linux
Mark Wielaard [Mon, 30 Oct 2023 22:30:06 +0000 (23:30 +0100)]
Disable memcpy overlap check and test on amd64 linux

Almost all newer distros have ifunc based memcpy/memmove glibc
implementation which cause false positives. Disable the overlap check
and test on these systems for now.

https://bugs.kde.org/show_bug.cgi?id=402833

12 months agoClear vbits after the test is done.
Eyal Soha [Mon, 30 Oct 2023 16:46:38 +0000 (10:46 -0600)]
Clear vbits after the test is done.

https://bugs.kde.org/show_bug.cgi?id=417993

12 months agobug340392 doesn't work on power because of bug352364
Mark Wielaard [Mon, 30 Oct 2023 20:41:57 +0000 (21:41 +0100)]
bug340392 doesn't work on power because of bug352364

Add a prereq to bug340392.vgtest to skip on Power for now.

12 months agoSet version to 3.22.0-RC2
Mark Wielaard [Thu, 26 Oct 2023 12:33:16 +0000 (14:33 +0200)]
Set version to 3.22.0-RC2

12 months agos390x regtest: Activate 128 bit SIMD tests for s390x in vbit-test
Andreas Arnez [Thu, 26 Oct 2023 12:00:52 +0000 (14:00 +0200)]
s390x regtest: Activate 128 bit SIMD tests for s390x in vbit-test

The vbit-test test case is currently configured to exclude s390x from the
platforms that execute the 128 bit SIMD irop tests.  Since there's no
known issue with those, they can be activated on s390x as well.

12 months agoAdd new exp files to EXTRA_DIST in memcheck/tests/Makefile.am
Mark Wielaard [Thu, 26 Oct 2023 11:40:59 +0000 (13:40 +0200)]
Add new exp files to EXTRA_DIST in memcheck/tests/Makefile.am

12 months agoAdd x86 variant of origin5-bz2.stderr.exp-glibc25-amd64-b
Mark Wielaard [Thu, 26 Oct 2023 11:17:13 +0000 (13:17 +0200)]
Add x86 variant of origin5-bz2.stderr.exp-glibc25-amd64-b

This matches the expected output on newer fedora 32bit x86.

12 months agoAdd 32bit variant of new_aligned_delete_default.stderr.exp
Mark Wielaard [Thu, 26 Oct 2023 10:51:57 +0000 (12:51 +0200)]
Add 32bit variant of new_aligned_delete_default.stderr.exp

On 32bit architectures sized delete takes an unsigned int instead of
an unsigned long as first argument.

12 months agovg_replace_malloc DELETE should not check size
Mark Wielaard [Thu, 26 Oct 2023 10:25:44 +0000 (12:25 +0200)]
vg_replace_malloc DELETE should not check size

The DELETE replacement functions check the size argument, but this
doesn't actually exist.  Only the DELETE_SIZED replacement functions
get a size (and should check it).

On i386 (fedora gnu/linux) this causes the following failures:

memcheck/tests/cxx17_aligned_new         (stderr)
memcheck/tests/leak_cpp_interior         (stderr)
memcheck/tests/mismatches                (stderr)
memcheck/tests/mismatches_xml            (stderr)
memcheck/tests/new_aligned_delete_default (stderr)
memcheck/tests/new_nothrow               (stderr)
memcheck/tests/realloc_size_zero_mismatch (stderr)

All showing "size" being undefined:

+Conditional jump or move depends on uninitialised value(s)
+   at 0x........: ...operator delete[]... (vg_replace_malloc.c:...)

or

+Mismatched new/delete size value: 4
+   at 0x........: ...operator delete... (vg_replace_malloc.c:...)

Oddly no other architecture seems to show issues. Maybe we just got lucky?

This patch fixes the issues on i386 (and shows no regressions on x86_64)

https://bugs.kde.org/show_bug.cgi?id=476108

12 months agoChange the vbit test specification for Iop_CmpGT64Ux2
Carl Love [Wed, 25 Oct 2023 15:20:30 +0000 (11:20 -0400)]
Change the vbit test specification for Iop_CmpGT64Ux2

The test should be specified as UNDEF_UNKNOWN not UNDEF_ALL_64x2.
No architectures should be enaabled for the test.

12 months agoRevert "Bug 476025 - Powerpc, update expected results for the vbit-test"
Carl Love [Tue, 24 Oct 2023 20:33:34 +0000 (16:33 -0400)]
Revert "Bug 476025 - Powerpc, update expected results for the vbit-test"

This reverts commit 5396fc8d0197e843657736ef8f7d9774400980c9.

The commited expect file is completely wrong.

12 months agoBug 476025 - Powerpc, update expected results for the vbit-test
Carl Love [Mon, 23 Oct 2023 23:15:00 +0000 (19:15 -0400)]
Bug 476025 - Powerpc, update expected results for the vbit-test

In commit:

  commit 26a3abd27db2ef63dafea1ecab00e8239f341f0f
  Author: Eyal Soha <eyalsoha@gmail.com>
  Date:   Thu Feb 10 09:52:54 2022 -0700

      Bug 432801 - Valgrind 3.16.1 reports a jump based on uninitialized
      memory somehow related to clang and signals

      Add support for precise computation of SIMD greater-than on
      amd64 and x86.

      This adds support for 64bit, 16bit, and 8bit to the existing 32bit
      support.

The Iop_CmpGT64Ux2 is only supported on PPC32 and PPC64.  The above
commit adds a more precise method, expensiveCmpGT, for setting the
vibits for the Iop_CmpGT64Ux2 Iop.

The expected results for the vbit test were not updated to the new more
precise results.  This patch updates the expected results for the Iop.

Patch tested on Power 10.

12 months agoAdd arm-linux build artifacts to .gitignore
Mark Wielaard [Thu, 19 Oct 2023 14:34:54 +0000 (16:34 +0200)]
Add arm-linux build artifacts to .gitignore

12 months agoAdd new drd/tests/thrd_create test to .gitignore
Mark Wielaard [Thu, 19 Oct 2023 14:26:34 +0000 (16:26 +0200)]
Add new drd/tests/thrd_create test to .gitignore

12 months agos390x: Adjust .gitignore after commit 7cf98163adb3f
Andreas Arnez [Thu, 19 Oct 2023 13:06:38 +0000 (15:06 +0200)]
s390x: Adjust .gitignore after commit 7cf98163adb3f

The executable of the new test case memcheck/tests/s390x/cli hasn't been
added to .gitignore yet.  Do this now.

12 months agoUpdate NEWS to reflect Clang support for s390x
Andreas Arnez [Thu, 19 Oct 2023 12:16:08 +0000 (14:16 +0200)]
Update NEWS to reflect Clang support for s390x

Small update in NEWS to reflect that Bug 465782 is fixed.

12 months agos390x regtest: Fix memcheck tests for cu21 and cu42 with Clang
Andreas Arnez [Thu, 19 Oct 2023 12:17:35 +0000 (14:17 +0200)]
s390x regtest: Fix memcheck tests for cu21 and cu42 with Clang

When compiled with Clang, the s390x memcheck tests for cu21 and cu42 yield
different line number information for the inline assemblies.  Using gcc,
the inline assemblies do not receive updated line number information
because they are phrased as if they were data, not code.  See also the
discussion in https://sourceware.org/bugzilla/show_bug.cgi?id=30206

Fix this by rephrasing the inline assemblies in cu21 and cu42 to normal
instructions, using the respective mnemonics.  Since this affects the line
number information, adjust the expected test output files as well.

12 months agos390x: Fix memcheck false positives with certain comparisons
Andreas Arnez [Tue, 16 May 2023 18:29:33 +0000 (20:29 +0200)]
s390x: Fix memcheck false positives with certain comparisons

Consider this structure definition:

  struct s {
    unsigned b : 1;
    unsigned c : 1;
  } x;

Then certain compiler optimizations for a big-endian system may transform
the test

  if (x.b || x.c)
     ...

into a comparison `> 0x3f' of the structure's first byte.  Indeed, the
result of this comparison only depends on the two highest bits of the
byte.  Thus, even if the lower bits are undefined, memcheck shouldn't
complain, but it does.

For certain cases this can be fixed.  Do this by detecting comparisons
like this in the condition code helper for S390_CC_OP_UNSIGNED_COMPARE and
transforming them to a test for the selected bits instead.  Add a small
test to verify the fix.

12 months agoSet version to 3.22.0-RC1
Mark Wielaard [Tue, 17 Oct 2023 22:28:45 +0000 (00:28 +0200)]
Set version to 3.22.0-RC1

This page took 0.06748 seconds and 5 git commands to generate.