You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(83) |
Oct
(89) |
Nov
(97) |
Dec
(30) |
| 2024 |
Jan
(25) |
Feb
(73) |
Mar
(76) |
Apr
(122) |
May
(46) |
Jun
(44) |
Jul
(27) |
Aug
(30) |
Sep
(33) |
Oct
(67) |
Nov
(91) |
Dec
(70) |
| 2025 |
Jan
(44) |
Feb
(36) |
Mar
(85) |
Apr
(100) |
May
(138) |
Jun
(55) |
Jul
(107) |
Aug
(96) |
Sep
(151) |
Oct
(129) |
Nov
(102) |
Dec
(103) |
| 2026 |
Jan
(89) |
Feb
(83) |
Mar
(144) |
Apr
(128) |
May
(28) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Paul F. <pa...@so...> - 2026-05-05 05:38:13
|
https://sourceware.org/cgit/valgrind/commit/?id=329561958444c90ab4065cba5d0657343a427f4b commit 329561958444c90ab4065cba5d0657343a427f4b Author: Paul Floyd <pj...@wa...> Date: Tue May 5 06:37:39 2026 +0200 Regtest Linux ppc64le: add an expected for memcheck sys-execveat Diff: --- memcheck/tests/linux/Makefile.am | 1 + .../tests/linux/sys-execveat.stderr.exp-ppc64le | 31 ++++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/memcheck/tests/linux/Makefile.am b/memcheck/tests/linux/Makefile.am index 17dc4c314a..03ea12d8b6 100644 --- a/memcheck/tests/linux/Makefile.am +++ b/memcheck/tests/linux/Makefile.am @@ -45,6 +45,7 @@ EXTRA_DIST = \ sys-preadv_pwritev.vgtest sys-preadv_pwritev.stderr.exp \ sys-preadv2_pwritev2.vgtest sys-preadv2_pwritev2.stderr.exp \ sys-execveat.vgtest sys-execveat.stderr.exp sys-execveat.stdout.exp \ + sys-execveat.stderr.exp-ppc64le \ enomem.vgtest enomem.stdout.exp \ memalign.vgtest memalign.stderr.exp \ memalign.stderr.exp-musl diff --git a/memcheck/tests/linux/sys-execveat.stderr.exp-ppc64le b/memcheck/tests/linux/sys-execveat.stderr.exp-ppc64le new file mode 100644 index 0000000000..c9e2125884 --- /dev/null +++ b/memcheck/tests/linux/sys-execveat.stderr.exp-ppc64le @@ -0,0 +1,31 @@ +Syscall param execveat(flags) contains uninitialised byte(s) + ... + by 0x........: sys_execveat (sys-execveat.c:16) + ... + +Syscall param execveat(filename) points to unaddressable byte(s) + ... + by 0x........: sys_execveat (sys-execveat.c:16) + ... + Address 0x........ is not stack'd, malloc'd or (recently) free'd + +Syscall param execveat(argv) points to uninitialised byte(s) + ... + by 0x........: sys_execveat (sys-execveat.c:16) + ... + Address 0x........ is 0 bytes inside a block of size 16 alloc'd + at 0x........: malloc (vg_replace_malloc.c:...) + by 0x........: main (sys-execveat.c:41) + +Syscall param execveat(argv[0]) points to unaddressable byte(s) + ... + by 0x........: sys_execveat (sys-execveat.c:16) + ... + Address 0x........ is not stack'd, malloc'd or (recently) free'd + +Syscall param execveat(argv) points to unaddressable byte(s) + ... + by 0x........: sys_execveat (sys-execveat.c:16) + ... + Address 0x........ is not stack'd, malloc'd or (recently) free'd + |
|
From: Paul F. <pj...@wa...> - 2026-05-05 05:31:56
|
On 2026-05-04 21:48, Paul Floyd via Valgrind-developers wrote: > Hi all > > I'm getting back to https://bugs.kde.org/show_bug.cgi?id=487418 > I get no failures on arm64 with the patch. If I force DZP to be true like this vai->arm64_data_zero_prohibited = True; // !!(val & 0x10); then the none/tests/arm64/dc_cvax test, which covers DC ZVA, behaves as expected. if (!(check_dc_zva & 0x10)) { size_t buf_size = (1U << ((check_dc_zva & 0xf) + 2)); //printf("lg 2 word count %lu byte count %zu\n", check_dc_zva & 0xfUL, buf_size); char* var_buf; if (posix_memalign((void**)&var_buf, buf_size, buf_size) == 0) { asm volatile("dc zva, %0" :: "r" (var_buf)); assert(var_buf[0] == 0); assert(var_buf[buf_size - 1] == 0); free(var_buf); } else { perror("posix_memalign failed:"); exit(1); } } else { printf("dczid_el0 Data Zero Prohibited bit is set\n"); } I added the printf to check this and with forced DZP it prints the message. Running the same test with "if (!(check_dc_zva & 0x10) || 1) {" to force executing DC ZVA even though it is prohibited that gives + +-- PUT(272) = 0x........:I64; exit-SigILL + +vex: priv/host_arm64_isel.c:4622 (void iselNext(ISelEnv *, IRExpr *, IRJumpKind, Int)): Assertion `0' failed. +vex storage: T total 89448480 bytes allocated +vex storage: P total 0 bytes allocated + +valgrind: the 'impossible' happened: + LibVEX called failure_exit(). + +host stacktrace: + at 0x........: show_sched_status_wrk (m_libcassert.c:427) Not very user friendly. I think that I'll add a message: vex_printf("ARM64 front end: DC ZVA instruction encountered with the DCZID_EL0 DZP flag set.\n"); A+ Paul |
|
From: Paul F. <pj...@wa...> - 2026-05-05 05:03:06
|
On 2026-05-04 22:09, Florian Krohm wrote: > Hi, > > I'm working on a patch that fixes make maintainer-clean such that it > removes the files created by autogen.sh - most notably Makefile.in and > .deps. > Doing so I noticed that the VEX Makefile is special in the sense that > it does not reside the VEX directory (as one would expect) but rather > as Makefile.vex.am in the top of the tree. This is a left-over from > the days when VEX resided in a separate repository. > So I am thinking of moving the Makefile.vex.am to VEX/Makefile.am. > > Any objections to that plan? Hi Florian That sounds more consistent to me. Will this affect out of tree builds? A+ Paul |
|
From: Florian K. <fl...@ei...> - 2026-05-04 20:09:11
|
Hi, I'm working on a patch that fixes make maintainer-clean such that it removes the files created by autogen.sh - most notably Makefile.in and .deps. Doing so I noticed that the VEX Makefile is special in the sense that it does not reside the VEX directory (as one would expect) but rather as Makefile.vex.am in the top of the tree. This is a left-over from the days when VEX resided in a separate repository. So I am thinking of moving the Makefile.vex.am to VEX/Makefile.am. Any objections to that plan? Florian |
|
From: Florian K. <fl...@ei...> - 2026-05-04 19:52:55
|
Hi Paul, On 5/4/26 19:56, Paul Floyd via Valgrind-developers wrote: > I think that there's a missing ">" at the end of the following. Well spotted, thanks! > Is it worth mentioning any of these: > I've added those with the exception of > https://github.com/KDE/kdev-valgrind KDevelop was already mentioned. Committed as cacf6e5e12522. Cheers, Florian |
|
From: Paul F. <pj...@wa...> - 2026-05-04 19:48:54
|
Hi all I'm getting back to https://bugs.kde.org/show_bug.cgi?id=487418 Starting with point 6 there are two things that we were not doing correctly: 1. when we read the cache size during startup we weren't reading the DZP bit (Data Zero Prohibited) from DCZID_EL0 2. when performing DC ZVA (Data Cache Zero by VA) we were not checking DZP to see if it is supported or not. We were already storing most of DCZID_EL0, just not the DZP bit. So at runtime we were using a dirty helper for DCZID_EL0. By storing DZP we can just read the values directly. Does the attached patch look OK? I'm not sure how to process a SIGILL. What I've done is if (archinfo->arm64_data_zero_prohibited) { putPC(mkU64( guest_PC_curr_instr)); dres->jk_StopHere = Ijk_SigILL; dres->whatNext = Dis_StopHere; return True; } This is similar to MIPS "ILLEGAL_INSTRUCTION". Otherwise in the patch DZP gets stored at startup, DC ZVA checks DZP at runtime and DCZID_EL0 uses the stored values rather than a dirty helper at runtime. Testing this is likely to be tricky. I think that almost all arm64 hardware supports DC ZVA. I'll probably just have to hard code the DZP value, run some tests and then put it back. A+ Paul |
|
From: Paul F. <pj...@wa...> - 2026-05-04 17:57:00
|
Hi Florian On 2026-05-03 23:43, Florian Krohm wrote: > Hi Paul, > > Likewise. > > Patch OK ? > I think that there's a missing ">" at the end of the following. It flows into another comment so is probably harmless. -<!-- last updated Dec.2011 --> +<!-- last updated Dec.2011 <li><p><a href="http://alleyoop.sourceforge.net/">Alleyoop</a>, by Jeffrey Stedfast.<br /> Alleyoop is a graphical front-end using the Gtk+ widget set and other GNOME libraries for the X-Windows environment.</p></li> - +-- Is it worth mentioning any of these: https://github.com/KDE/kdev-valgrind https://marketplace.visualstudio.com/items?itemName=1nVitr0.valgrind-task-integration https://www.jetbrains.com/help/clion/memory-profiling-with-valgrind.html https://doc.qt.io/qtcreator/creator-run-settings-valgrind.html There's also neovim https://github.com/dlyongemallo/sanity.nvim which was mentioned on the users mailing list a bit over a month ago. I've briefly used the 3rd and 4th ones when testing XML changes. A+ Paul |
|
From: Florian K. <fk...@so...> - 2026-05-04 15:22:58
|
https://sourceware.org/cgit/valgrind/commit/?id=4e6bb00f71f1f90b5d8675a8aff78f047fb87cf5 commit 4e6bb00f71f1f90b5d8675a8aff78f047fb87cf5 Author: Florian Krohm <fl...@ei...> Date: Mon May 4 15:21:35 2026 +0000 Fix gxx304 testcase. Testcases ought to clean up after themselves. Diff: --- .gitignore | 1 - none/tests/gxx304.vgtest | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index e72d328276..7ab6132dcd 100644 --- a/.gitignore +++ b/.gitignore @@ -1652,7 +1652,6 @@ /none/tests/nestedfns /none/tests/nocwd /none/tests/pending -/none/tests/pluto /none/tests/ppoll_alarm /none/tests/process_vm_readv_writev /none/tests/pselect_alarm diff --git a/none/tests/gxx304.vgtest b/none/tests/gxx304.vgtest index 202a58aa26..382b2bf429 100644 --- a/none/tests/gxx304.vgtest +++ b/none/tests/gxx304.vgtest @@ -1 +1,2 @@ prog: gxx304 +post: rm -f pluto |
|
From: Florian K. <fk...@so...> - 2026-05-04 14:50:23
|
https://sourceware.org/cgit/valgrind/commit/?id=509fd1505326559990d7e5b12f0172719afd8925 commit 509fd1505326559990d7e5b12f0172719afd8925 Author: Florian Krohm <fl...@ei...> Date: Mon May 4 14:49:16 2026 +0000 make clean to remove artifacts from failed regression tests. Diff: --- Makefile.am | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile.am b/Makefile.am index 674ad64469..d5d3de5933 100644 --- a/Makefile.am +++ b/Makefile.am @@ -152,6 +152,16 @@ clean-local: find . -name '*.vgtest.trs' -print0 | xargs -r -0 rm find . -name test-suite.log -print0 | xargs -r -0 rm rm -f test-suite-overall.log + find . -name '*.stdout.out' -print0 | xargs -r -0 rm + find . -name '*.stderr.out' -print0 | xargs -r -0 rm + find . -name '*.stdoutB.out' -print0 | xargs -r -0 rm + find . -name '*.stderrB.out' -print0 | xargs -r -0 rm + find . -name '*.post.out' -print0 | xargs -r -0 rm + find . -name '*.stdout.diff*' -print0 | xargs -r -0 rm + find . -name '*.stderr.diff*' -print0 | xargs -r -0 rm + find . -name '*.stdoutB.diff*' -print0 | xargs -r -0 rm + find . -name '*.stderrB.diff*' -print0 | xargs -r -0 rm + find . -name '*.post.diff*' -print0 | xargs -r -0 rm # Need config.h in the installed tree, since some files depend on it pkginclude_HEADERS = config.h |
|
From: Paul F. <pa...@so...> - 2026-05-04 06:23:17
|
https://sourceware.org/cgit/valgrind/commit/?id=5a5454d1cb3110e93ed128d11c8a2997009cec9f commit 5a5454d1cb3110e93ed128d11c8a2997009cec9f Author: Paul Floyd <pj...@wa...> Date: Mon May 4 08:21:32 2026 +0200 Darwin syswrap: make kdebug_trace_string helpers conditional Only for OSX 10.11 and later. Part of cleanup for https://bugs.kde.org/show_bug.cgi?id=519604 Diff: --- coregrind/m_syswrap/syswrap-darwin.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/coregrind/m_syswrap/syswrap-darwin.c b/coregrind/m_syswrap/syswrap-darwin.c index 68c2d544aa..6f2151666b 100644 --- a/coregrind/m_syswrap/syswrap-darwin.c +++ b/coregrind/m_syswrap/syswrap-darwin.c @@ -721,6 +721,8 @@ void VG_(show_open_ports)(void) VG_(message)(Vg_UserMsg, "\n"); } +/* helpers used by PRE(kdebug_trace_string) added in OSX 10.11 */ +#if DARWIN_VERS >= DARWIN_10_11 /* --------------------------------------------------------------------- kdebug helpers @@ -904,6 +906,8 @@ static const HChar *kdebug_debugid(ULong did) return buf; } +#endif + /* --------------------------------------------------------------------- sync_mappings |
|
From: Florian K. <fl...@ei...> - 2026-05-03 22:08:11
|
Hi Paul, thanks for your comments. Attached is a proposed patch for the web-pages. On 5/2/26 07:57, Paul Floyd via Valgrind-developers wrote: > > > Someone on github seems to have adopted Valkyrie: https://github.com/barsnick/ > valkyrie and also ported it to Qt5 and Qt6, it seems to be under reasonably > active development. > I wasn't sure about valkyrie, somehow thinking that it was maintained and tested by the valgrind developers. Clearly - not so. I removed the reference to it from the "Current Releases" page and moved it to the "GUIs and IDEs" page. > MemcheckView is here on GH https://github.com/llnl/Tool-Gear/tree/master, last > change 8 years ago. The main web page has moved to https://hpc.llnl.gov/ > software/development-environment-software/valgrind-memcheck-tool > Too old. I removed the reference to it. > Alleyoop is still there on sourceforge, untouched for 15 years. As you say it > may be suffering from xml version rot. > Likewise. Patch OK ? Thanks, Florian |
|
From: Paul F. <pj...@wa...> - 2026-05-03 17:55:41
|
On 2026-05-03 16:26, Mark Wielaard wrote: > Hi all, > > I created the VALGRIND_3_27_BRANCH with one regression fix and a > couple of simple bug fixes I wished were in 3.27.0: > > Set version to 3.27.1.GIT > Prepare NEWS for branch 3.27 fixes > Update vg-lifespan (copyright) years > Use SSizeT for VG_(readlink) result in VG_(realpath) > Bug 519574 - valgrind 3.27 "--fair-sched=yes" does not work > > Please feel free to add others if they are low risk. Use git > cherry-pick -x where possible. > > I intend to do a valgrind 3.27.1 release with all fixes on May 20th > (one month after the 3.27.0 release). > Hi Mark Probably just one for me Bug 519613 - Valgrind incorrectly unpacks the result of sys_port (port_getn) on error, leading to a ~6 0s wallclock time delay on every call A+ Paul |
|
From: Paul F. <pa...@so...> - 2026-05-03 17:52:47
|
https://sourceware.org/cgit/valgrind/commit/?id=678b996b49fcc0e9dfd5faf3138ce9081d50741d commit 678b996b49fcc0e9dfd5faf3138ce9081d50741d Author: Paul Floyd <pj...@wa...> Date: Sun May 3 19:51:49 2026 +0200 README_DEVELOPERS: improve updating zstd instructions and a couple of typos. Diff: --- README_DEVELOPERS | 65 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 56 insertions(+), 9 deletions(-) diff --git a/README_DEVELOPERS b/README_DEVELOPERS index 286ed3b52c..1c27ab6839 100644 --- a/README_DEVELOPERS +++ b/README_DEVELOPERS @@ -200,11 +200,11 @@ for example "/tool/tests/newtest". The 'scalar' tests are something of a special case. Scalar in this sense refers to the registers (or stack slots) used to pass in arguments. These tests directly use the 'syscall' syscall via a macro, SY. They make little effort -to use the sysall in a realistic manner. Rather, the objective is to -exhaustively test all of the arguemnts and referenced memory of syscalls. +to use the syscall in a realistic manner. Rather, the objective is to +exhaustively test all of the arguments and referenced memory of syscalls. The variable 'x0' is a long integer, containing the value of 0 but also uninitialised. It can be used on its own or with some other value -to ensure that all of the syscall arguemts are uninitialised. +to ensure that all of the syscall arguments are uninitialised. A second macro, GO, is used precede the syscall (and subsequent errors) with a header. The GO string includes the name of the syscall, a count of expected scalar errors and a count of memory errors. The tests are usually @@ -550,7 +550,9 @@ Updating zstd ~~~~~~~~~~~~~ Similar to libiberty, we have to import a copy of zstd rather than linking with a library. There isn't (yet) a script to automate this, so it has to be -done manually. +done manually. Use a stable version of Linux with GCC to perform the update. +Other compilers/platforms may produce different versions of the single file +version of zstd which could have unexpected consequences. The version currently in use can be seen in coregrind/m_debuginfo/zstd.h. Look for ZSTD_VERSION_MAJOR ZSTD_VERSION_MINOR and ZSTD_VERSION_RELEASE. @@ -562,11 +564,56 @@ Look for ZSTD_VERSION_MAJOR ZSTD_VERSION_MINOR and ZSTD_VERSION_RELEASE. - Checkout the latest release tag (should be vMAJ.MIN.REL) - Copy {zstd git repo}/lib/zstd.h to coregrind/m_debuginfo/zstd.h - - - cd to {zstd git repo}/build/single_file_libs and run ./create_single_file_decoder.sh - + + - Copy {zstd git repo}/lib/zstd_errors.h to coregrind/m_debuginfo/zstd_errors.h + + - cd to {zstd git repo}/build/single_file_libs and run ./create_single_file_decoder.sh + + - copy zstddeclib.c to zstddeclib_theirs.c + + - checkout the previous release tag + + - run create_single_file_decoder.sh + + - copy zstddeclib.c to zstddeclib_orig.c + - You cannot simply copy and use the generated zstddeclib.c! All calls to libc functions in this file need replacing with VG_ versions. - Merge the newly generated zstddeclib.c with coregrind/m_debuginfo/zstddeclib.c. + Merge the newly generated zstddeclib.c with + coregrind/m_debuginfo/zstddeclib.c. Make sure to keep the copy of the BSD license in the C file. - + + You can use a 3-way merge GUI tool like meld. An example usage is + + meld --auto-merge path/to/zstddeclib_orig.c coregrind/m_debuginfo/zstddeclib.c path/to/zstddeclib_theirs.c -o coregrind/m_debuginfo/zstddeclib.c + + Alternatively, you could use patch and diff. + + diff path/to/zstddeclib_orig.c path/to/zstddeclib_theirs.c > zstd_delta.patch + patch coregrind/m_debuginfo/zstddeclib.c zstd_delta.patch + + - After you have ensured that Valgrind builds correctly, perform some extra + tests. + + - Check that upstream has not added any header dependencies to zstd.h. Ensure + that you have run make before performing this test because the deps files + are only updated by performing a build. + + grep zstd coregrind/m_debuginfo/.deps/* + + Ensure that all of the paths to zstd headers start with m_debuginfo + and not a system header path like /usr/include. If you do see a path like + /usr/include check to see what has been added to zstd. You will need to + copy the new file to coregrind/m_debuginfo and then edit + coregrind/Makefile.am and add the new header to noinst_HEADERS somewhere + after the existing zstd headers. + + - Check that zstddeclib.c does not use any libc functions. This assumes that + you are on the amd64 platform. + + nm coregrind/m_debuginfo/libcoregrind_amd64_linux_a-zstddeclib.o | grep " U " + + You should only see functions with a "vgPlain_" prefix. This check is + probably redundant since the Valgrind tools ought to fail to link if they + refer to libc functions. There is no harm in performing this extra check. + |
|
From: Mark W. <ma...@kl...> - 2026-05-03 14:27:11
|
Hi all, I created the VALGRIND_3_27_BRANCH with one regression fix and a couple of simple bug fixes I wished were in 3.27.0: Set version to 3.27.1.GIT Prepare NEWS for branch 3.27 fixes Update vg-lifespan (copyright) years Use SSizeT for VG_(readlink) result in VG_(realpath) Bug 519574 - valgrind 3.27 "--fair-sched=yes" does not work Please feel free to add others if they are low risk. Use git cherry-pick -x where possible. I intend to do a valgrind 3.27.1 release with all fixes on May 20th (one month after the 3.27.0 release). Cheers, Mark |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:22:00
|
https://sourceware.org/cgit/valgrind/commit/?id=a35e1ec4800b9e6636e6b0a8583cd4bbac890ce8 commit a35e1ec4800b9e6636e6b0a8583cd4bbac890ce8 Author: Paul Floyd <pj...@wa...> Date: Wed Apr 29 19:55:13 2026 +0200 Bug 519574 - valgrind 3.27 "--fair-sched=yes" does not work (cherry picked from commit f742af1dff1ce09cb4d9a3dd449201a244886eb3) Diff: --- NEWS | 2 ++ configure.ac | 31 +++++++++++------------ helgrind/tests/Makefile.am | 1 + helgrind/tests/annotate_hbefore_fair_sched.vgtest | 3 +++ 4 files changed, 21 insertions(+), 16 deletions(-) diff --git a/NEWS b/NEWS index bed95bec18..0394c30d75 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,8 @@ Branch 3.27 The following bugs have been fixed or resolved on this branch. +519574 valgrind 3.27 "--fair-sched=yes" does not work + To see details of a given bug, visit https://bugs.kde.org/show_bug.cgi?id=XXXXXX where XXXXXX is the bug number as listed above. diff --git a/configure.ac b/configure.ac index f00f70f293..d3d4fca428 100644 --- a/configure.ac +++ b/configure.ac @@ -5258,21 +5258,6 @@ AC_MSG_RESULT([no]) ]) CFLAGS="$save_CFLAGS" -if test x$ac_have_usable_linux_futex_h = xyes \ - -a x$ac_have_builtin_atomic_primary = xyes; then - ac_enable_linux_ticket_lock_primary=yes -fi -AM_CONDITIONAL([ENABLE_LINUX_TICKET_LOCK_PRIMARY], - [test x$ac_enable_linux_ticket_lock_primary = xyes]) - -if test x$VGCONF_PLATFORM_SEC_CAPS != x \ - -a x$ac_have_usable_linux_futex_h = xyes \ - -a x$ac_have_builtin_atomic_secondary = xyes; then - ac_enable_linux_ticket_lock_secondary=yes -fi -AM_CONDITIONAL([ENABLE_LINUX_TICKET_LOCK_SECONDARY], - [test x$ac_enable_linux_ticket_lock_secondary = xyes]) - #---------------------------------------------------------------------------- # Checks for typedefs, structures, and compiler characteristics. @@ -5866,7 +5851,21 @@ fi AM_CONDITIONAL([HAVE_BUILTIN_ATOMIC64], [test x$ac_have_builtin_atomic64 = xyes]) - +if test x$ac_have_usable_linux_futex_h = xyes \ + -a x$ac_have_builtin_atomic_primary = xyes; then + ac_enable_linux_ticket_lock_primary=yes +fi +AM_CONDITIONAL([ENABLE_LINUX_TICKET_LOCK_PRIMARY], + [test x$ac_enable_linux_ticket_lock_primary = xyes]) + +if test x$VGCONF_PLATFORM_SEC_CAPS != x \ + -a x$ac_have_usable_linux_futex_h = xyes \ + -a x$ac_have_builtin_atomic_secondary = xyes; then + ac_enable_linux_ticket_lock_secondary=yes +fi +AM_CONDITIONAL([ENABLE_LINUX_TICKET_LOCK_SECONDARY], + [test x$ac_enable_linux_ticket_lock_secondary = xyes]) + AC_MSG_CHECKING([if platform has openat2 syscall]) AC_LINK_IFELSE([AC_LANG_PROGRAM([[ diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am index 70381988a1..bfdb3fff2f 100644 --- a/helgrind/tests/Makefile.am +++ b/helgrind/tests/Makefile.am @@ -18,6 +18,7 @@ EXTRA_DIST = \ bug513598.vgtest \ lock_destroy_report.vgtest lock_destroy_report.stderr.exp \ annotate_hbefore.vgtest \ + annotate_hbefore_fair_sched.vgtest \ annotate_rwlock.vgtest annotate_rwlock.stderr.exp \ annotate_smart_pointer.vgtest annotate_smart_pointer.stderr.exp \ bug322621.vgtest bug322621.stderr.exp \ diff --git a/helgrind/tests/annotate_hbefore_fair_sched.vgtest b/helgrind/tests/annotate_hbefore_fair_sched.vgtest new file mode 100644 index 0000000000..9864513a45 --- /dev/null +++ b/helgrind/tests/annotate_hbefore_fair_sched.vgtest @@ -0,0 +1,3 @@ +prereq: ../../tests/os_test linux +vgopts: -q --fair-sched=yes +prog: annotate_hbefore |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:21:54
|
https://sourceware.org/cgit/valgrind/commit/?id=2db0af5aad9490cad99e5c75cc5d3794bb715db6 commit 2db0af5aad9490cad99e5c75cc5d3794bb715db6 Author: Mark Wielaard <ma...@kl...> Date: Wed Apr 22 14:15:28 2026 +0200 Use SSizeT for VG_(readlink) result in VG_(realpath) VG_(readlink) returns a negative value if it fails. Which is checked for right after the call. But if SizeT is unsigned, so that check always fails. Use SSizeT instead for the result variable. (cherry picked from commit b62544e78b037b9a786814d047f41faf5f523e8d) Diff: --- coregrind/m_libcfile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coregrind/m_libcfile.c b/coregrind/m_libcfile.c index ef8bd9d7b7..2c5914d068 100644 --- a/coregrind/m_libcfile.c +++ b/coregrind/m_libcfile.c @@ -1865,7 +1865,7 @@ Bool VG_(realpath)(const HChar *path, HChar *resolved) } if (VKI_S_ISLNK(statbuf.mode)) { - SizeT link_len = VG_(readlink)(path, tmp, VKI_PATH_MAX); + SSizeT link_len = VG_(readlink)(path, tmp, VKI_PATH_MAX); if (link_len < 0) return False; tmp[link_len] = '\0'; |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:21:51
|
https://sourceware.org/cgit/valgrind/commit/?id=4a152916d511e6f03a7a3e0effcf103696b350ea commit 4a152916d511e6f03a7a3e0effcf103696b350ea Author: Mark Wielaard <ma...@kl...> Date: Tue Apr 21 02:02:08 2026 +0200 Update vg-lifespan (copyright) years (cherry picked from commit 576b14e62ae2ebccd247803c301cf40137e7a680) Diff: --- docs/xml/vg-entities.xml.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/xml/vg-entities.xml.in b/docs/xml/vg-entities.xml.in index 9cf75536db..60c5b38b69 100644 --- a/docs/xml/vg-entities.xml.in +++ b/docs/xml/vg-entities.xml.in @@ -2,7 +2,7 @@ <!ENTITY vg-jemail "ju...@va..."> <!ENTITY vg-vemail "val...@va..."> <!ENTITY cl-email "Jos...@gm..."> -<!ENTITY vg-lifespan "2000-2025"> +<!ENTITY vg-lifespan "2000-2026"> <!-- valgrind release + version stuff --> <!ENTITY rel-type "Release"> |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:21:45
|
https://sourceware.org/cgit/valgrind/commit/?id=82f4506c6d35130e793af580692e0ac7c1ff39a8 commit 82f4506c6d35130e793af580692e0ac7c1ff39a8 Author: Mark Wielaard <ma...@kl...> Date: Sun May 3 16:01:56 2026 +0200 Prepare NEWS for branch 3.27 fixes Diff: --- NEWS | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/NEWS b/NEWS index f982eabf31..bed95bec18 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,15 @@ +Branch 3.27 +~~~~~~~~~~~ + +* ==================== FIXED BUGS ==================== + +The following bugs have been fixed or resolved on this branch. + +To see details of a given bug, visit + https://bugs.kde.org/show_bug.cgi?id=XXXXXX +where XXXXXX is the bug number as listed above. + + Release 3.27.0 (20 Apr 2026) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:21:39
|
https://sourceware.org/cgit/valgrind/commit/?id=50310faed9bfb9733be2b2bb05cce3463b82a938 commit 50310faed9bfb9733be2b2bb05cce3463b82a938 Author: Mark Wielaard <ma...@kl...> Date: Sun May 3 15:34:06 2026 +0200 Set version to 3.27.1.GIT Diff: --- configure.ac | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 4f62b19afc..f00f70f293 100644 --- a/configure.ac +++ b/configure.ac @@ -17,9 +17,9 @@ AC_PREREQ(2.69) # Do not forget to rerun ./autogen.sh m4_define([v_major_ver], [3]) m4_define([v_minor_ver], [27]) -m4_define([v_micro_ver], [0]) -m4_define([v_suffix_ver], []) -m4_define([v_rel_date], ["20 Apr 2026"]) +m4_define([v_micro_ver], [1]) +m4_define([v_suffix_ver], [GIT]) +m4_define([v_rel_date], ["?? May 2026"]) m4_define([v_version], m4_if(v_suffix_ver, [], [v_major_ver.v_minor_ver.v_micro_ver], |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:21:34
|
The branch 'VALGRIND_3_27_BRANCH' was created pointing to: a35e1ec480... Bug 519574 - valgrind 3.27 "--fair-sched=yes" does not work |
|
From: Mark W. <ma...@so...> - 2026-05-03 14:21:04
|
https://sourceware.org/cgit/valgrind/commit/?id=03070148deed2cefa6eeccca0aeefcd92bc671b2 commit 03070148deed2cefa6eeccca0aeefcd92bc671b2 Author: Mark Wielaard <ma...@kl...> Date: Sun May 3 16:07:53 2026 +0200 Mention 519574 - 'valgrind 3.27 --fair-sched=yes does not work' in NEWS Diff: --- NEWS | 1 + 1 file changed, 1 insertion(+) diff --git a/NEWS b/NEWS index 2e31f8b233..0e8bdb4549 100644 --- a/NEWS +++ b/NEWS @@ -25,6 +25,7 @@ are not entered into bugzilla tend to get forgotten about or ignored. 519223 Recognize ioctl(UFFDIO_*) operations 519539 Darwin shm_open mode is optional and depends on oflag +519574 valgrind 3.27 "--fair-sched=yes" does not work 519613 Valgrind incorrectly unpacks the result of sys_port (port_getn) on error, leading to a ~60s wallclock time delay on every call |
|
From: Paul F. <pa...@so...> - 2026-05-03 13:18:17
|
https://sourceware.org/cgit/valgrind/commit/?id=9c57ad91190878a97204560aff4ee27b64974275 commit 9c57ad91190878a97204560aff4ee27b64974275 Author: Paul Floyd <pj...@wa...> Date: Sun May 3 15:16:10 2026 +0200 Darwin: make sure that VKI_AT_FDCWD is defined on old systems We claim support for OSX 10.8 and 10.9 byut they don't have AT_FDCWD. So define it ourselves. Part of the fixes for https://bugs.kde.org/show_bug.cgi?id=519604 Diff: --- configure.ac | 3 --- include/vki/vki-darwin.h | 8 ++++++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 049813c1e0..282b8e731f 100644 --- a/configure.ac +++ b/configure.ac @@ -451,9 +451,6 @@ case "${host_os}" in AC_DEFINE_UNQUOTED([$1], [$$1], [DARWIN_VERS value for $3]) AC_SUBST($1) ]) - AC_ADD_DARWIN_VERS([DARWIN_10_5], 100500, [DARWIN_VERS value for Mac OS X 10.5]) - AC_ADD_DARWIN_VERS([DARWIN_10_6], 100600, [DARWIN_VERS value for Mac OS X 10.6 / iOS 4]) - AC_ADD_DARWIN_VERS([DARWIN_10_7], 100700, [DARWIN_VERS value for Mac OS X 10.7 / iOS 5]) AC_ADD_DARWIN_VERS([DARWIN_10_8], 100800, [DARWIN_VERS value for Mac OS X 10.8 / iOS 6]) AC_ADD_DARWIN_VERS([DARWIN_10_9], 100900, [DARWIN_VERS value for Mac OS X 10.9 / iOS 7]) AC_ADD_DARWIN_VERS([DARWIN_10_10], 101000, [DARWIN_VERS value for Mac OS X 10.10 / iOS 8]) diff --git a/include/vki/vki-darwin.h b/include/vki/vki-darwin.h index 47a90ec5f5..4c2c26af82 100644 --- a/include/vki/vki-darwin.h +++ b/include/vki/vki-darwin.h @@ -373,7 +373,15 @@ typedef uint32_t vki_u32; #define VKI_O_EXCL O_EXCL #define VKI_O_EVTONLY O_EVTONLY +/* OSX 10.6 was the first to get any *at functions like openat + * but it wasn't until OSX 10.10 that a definition for AT_FDCWD + * was added. We dont claim to support anything older than 10.8 + * any more, so no need to worry about versions older than that. */ +#if DARWIN_VERS >= DARWIN_10_10 #define VKI_AT_FDCWD AT_FDCWD +#else +#define VKI_AT_FDCWD -2 +#endif #define VKI_F_DUPFD F_DUPFD #define VKI_F_GETFD F_GETFD |
|
From: Paul F. <pa...@so...> - 2026-05-03 06:43:34
|
https://sourceware.org/cgit/valgrind/commit/?id=739409674939913c4400231e90b8c75110c9cc14 commit 739409674939913c4400231e90b8c75110c9cc14 Author: Paul Floyd <pj...@wa...> Date: Sun May 3 08:39:07 2026 +0200 Darwin persona syscall: use the SYS_persona macro to detect at build time It looks like I broke OSX 10.10 build when I added the persona wrapper. Rather than hard code the version for persona this should work on all platforms. In the longer term I'd like to do the same as Linux and FreeBSD and not use a VERS macro for Darwin syscalls. Diff: --- coregrind/m_syswrap/priv_syswrap-darwin.h | 1 + coregrind/m_syswrap/syswrap-darwin.c | 6 ++++++ include/vki/vki-scnums-darwin.h | 7 ++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/coregrind/m_syswrap/priv_syswrap-darwin.h b/coregrind/m_syswrap/priv_syswrap-darwin.h index 20817c2525..2003e6c99a 100644 --- a/coregrind/m_syswrap/priv_syswrap-darwin.h +++ b/coregrind/m_syswrap/priv_syswrap-darwin.h @@ -31,6 +31,7 @@ #include "pub_core_basics.h" // ThreadId #include "priv_types_n_macros.h" // DECL_TEMPLATE +#include <sys/syscall.h> // syswrap-darwin.c Addr allocstack ( ThreadId tid ); diff --git a/coregrind/m_syswrap/syswrap-darwin.c b/coregrind/m_syswrap/syswrap-darwin.c index ad5d2a6e63..68c2d544aa 100644 --- a/coregrind/m_syswrap/syswrap-darwin.c +++ b/coregrind/m_syswrap/syswrap-darwin.c @@ -10852,6 +10852,7 @@ PRE(pselect) #endif /* DARWIN_VERS >= DARWIN_10_11 */ +#if defined(SYS_persona) // SYS_persona 494 // __persona(uint32_t operation, uint32_t flags, struct kpersona_info *info, uid_t *id, // i size_t *idlen, char *path); @@ -10943,6 +10944,7 @@ POST(persona) break; } } +#endif /* defined(SYS_persona) */ /* --------------------------------------------------------------------- @@ -12230,7 +12232,11 @@ const SyscallTableEntry ML_(syscall_table)[] = { // _____(__NR_stack_snapshot_with_config), // 491 // _____(__NR_microstackshot), // 492 // _____(__NR_grab_pgo_data), // 493 +#endif +#if defined(SYS_persona) MACXY(__NR_persona, persona), // 494 +#endif +#if DARWIN_VERS >= DARWIN_10_11 _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(495)), // ??? _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(496)), // ??? _____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(497)), // ??? diff --git a/include/vki/vki-scnums-darwin.h b/include/vki/vki-scnums-darwin.h index 94d4cec93e..f5f2ddf1f9 100644 --- a/include/vki/vki-scnums-darwin.h +++ b/include/vki/vki-scnums-darwin.h @@ -32,6 +32,7 @@ // need DARWIN_10_x definitions #include "config.h" +#include <sys/syscall.h> // osfmk/mach/i386/syscall_sw.h @@ -819,11 +820,15 @@ #define __NR_stack_snapshot_with_config VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(491) #define __NR_microstackshot VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(492) #define __NR_grab_pgo_data VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(493) -#define __NR_persona VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(494) +#endif /* DARWIN_VERS >= DARWIN_10_11 */ +#if defined(SYS_persona) +#define __NR_persona VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(SYS_persona) // 494 +#endif /* 495 */ /* 496 */ /* 497 */ /* 498 */ +#if DARWIN_VERS >= DARWIN_10_11 #define __NR_work_interval_ctl VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(499) #endif /* DARWIN_VERS >= DARWIN_10_11 */ |
|
From: Mark W. <ma...@so...> - 2026-05-02 21:02:52
|
https://sourceware.org/cgit/valgrind/commit/?id=5bca10c31140a9c8e4803e71f082729f7598292c commit 5bca10c31140a9c8e4803e71f082729f7598292c Author: Mark Wielaard <ma...@kl...> Date: Sat May 2 22:59:23 2026 +0200 Change XMMREG_DST in sse4-common.h back to xmm11 for amd64 XMMREG_DST for amd64 (x86_64) was accidentially set to xmm7 instead of using xmm11 in commit a1904db1dd0ee8c046a3fd89c822463cd496d78e. Add SSE4.1 PBLENDVB, BLENDVPS and BLENDVPD Change it back to xmm11 to make sure a register that isn't available in 32bit mode is tested. No changes to any of the test results because of this. Diff: --- none/tests/sse4-common.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/none/tests/sse4-common.h b/none/tests/sse4-common.h index 97e11080cb..aabbfeb4c7 100644 --- a/none/tests/sse4-common.h +++ b/none/tests/sse4-common.h @@ -159,9 +159,10 @@ static inline double mkNegNan ( void ) { return -mkPosNan(); } /* Macros for testing XMM register to register and memory to register operations */ -/* Use xmm7 for both 32-bit x86 and amd64 (xmm8-15 don't exist in 32-bit mode) */ +/* Use xmm7 for 32-bit x86 and xxm11 for amd64 + (xmm8-15 don't exist in 32-bit mode) */ #ifdef __x86_64__ -#define XMMREG_DST "xmm7" +#define XMMREG_DST "xmm11" #else #define XMMREG_DST "xmm7" #endif |
|
From: Paul F. <pa...@so...> - 2026-05-02 07:23:15
|
https://sourceware.org/cgit/valgrind/commit/?id=57e4c8991f6e2c144ee91bf471b0a2adce358284 commit 57e4c8991f6e2c144ee91bf471b0a2adce358284 Author: Paul Floyd <pj...@wa...> Date: Sat May 2 09:21:55 2026 +0200 Darwin: fix a typo in a macro conditional Diff: --- coregrind/fixup_macho_loadcmds.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coregrind/fixup_macho_loadcmds.c b/coregrind/fixup_macho_loadcmds.c index c267d00d4f..3f2368339b 100644 --- a/coregrind/fixup_macho_loadcmds.c +++ b/coregrind/fixup_macho_loadcmds.c @@ -515,7 +515,7 @@ void modify_macho_loadcmds ( HChar* filename, fail("has __UNIXSTACK, but wrong ::vmaddr"); if (seg->vmsize != expected_stack_size) fail("has __UNIXSTACK, but wrong ::vmsize"); -#if DARIN_VERS >= DARWIN_10_15 +#if DARWIN_VERS >= DARWIN_10_15 if (seg->maxprot != 3) fail("has __UNIXSTACK, but wrong ::maxprot (should be 3)"); #elif DARWIN_VERS == DARWIN_10_14 |