Commit d00cf645c1 for openssl.org

commit d00cf645c1d631299843d7dda3a21f24ef5848f8
Author: Nikola Pajkovsky <nikolap@openssl.org>
Date:   Wed Jul 15 09:51:51 2026 +0200

    test: include PID in valgrind log file names

    Append the %p (process ID) placeholder to valgrind's --log-file in
    both app() and test(). When a test spawns multiple processes sharing
    the same result index, they previously wrote to the same log file and
    clobbered each other's output. Using %p gives each process its own
    log, so no valgrind findings are lost.

    Signed-off-by: Nikola Pajkovsky <nikolap@openssl.org>

    Reviewed-by: Tim Hudson <tjh@openssl.org>
    Reviewed-by: Paul Dale <paul.dale@oracle.com>
    Reviewed-by: Neil Horman <nhorman@openssl.org>
    MergeDate: Mon Jul 20 09:07:07 2026
    (Merged from https://github.com/openssl/openssl/pull/31961)

diff --git a/util/perl/OpenSSL/Test.pm b/util/perl/OpenSSL/Test.pm
index 0cdb41259c..570d3a8631 100644
--- a/util/perl/OpenSSL/Test.pm
+++ b/util/perl/OpenSSL/Test.pm
@@ -333,7 +333,7 @@ sub app {
             $idx=$idx+1;
             my $resultdir = result_dir();
             my $srcdir = srctop_dir();
-            return cmd([ "valgrind", "--leak-check=full", "--show-leak-kinds=all", "--gen-suppressions=all", "--suppressions=$srcdir/util/valgrind.suppression", "--log-file=$resultdir/valgrind.log.$idx", "--suppressions=$srcdir/util/valgrind.suppression", @prog, @cmdargs ],
+            return cmd([ "valgrind", "--leak-check=full", "--show-leak-kinds=all", "--gen-suppressions=all", "--suppressions=$srcdir/util/valgrind.suppression", "--log-file=$resultdir/valgrind.log.$idx.%p", "--suppressions=$srcdir/util/valgrind.suppression", @prog, @cmdargs ],
                        exe_shell => $ENV{EXE_SHELL}, %opts) -> (shift);
         } else {
             return cmd([ @prog, @cmdargs ],
@@ -363,7 +363,7 @@ sub test {
            $idx=$idx+1;
            my $resultdir = result_dir();
            my $srcdir = srctop_dir();
-           return cmd([ "valgrind", "--leak-check=full", "--show-leak-kinds=all", "--gen-suppressions=all", "--suppressions=$srcdir/util/valgrind.suppression", "--log-file=$resultdir/valgrind.log.$idx", "--suppressions=$srcdir/util/valgrind.suppression", @prog, @cmdargs ],
+           return cmd([ "valgrind", "--leak-check=full", "--show-leak-kinds=all", "--gen-suppressions=all", "--suppressions=$srcdir/util/valgrind.suppression", "--log-file=$resultdir/valgrind.log.$idx.%p", "--suppressions=$srcdir/util/valgrind.suppression", @prog, @cmdargs ],
                    exe_shell => $ENV{EXE_SHELL}, %opts) -> (shift);
         } elsif (defined $ENV{OSSL_VALGRIND_CT}) {
            # Constant-time validation mode: mark secret data as undefined and