Hello again,

I was able to figure out the problem.

It turns out this range:
scan 0x53c4000-0x14dc4000 (262144000)
--00:00:01:42.342 3477-- sync signal handler: signal=7, si_code=2,
EIP=0x0, eip=0x58002e8d, from kernel

Corresponds to the area that the application obtains with mmap().
It reserves 250 MB of memory and mmap() returns success both in the VM
and in the container.
Then the application checks if the whole region is accessible by
gradually memsetting it to 0, intercepting SIGSEGV and SIGBUS signals,
and then reporting how much of that range it was able to zero.
It turns out that in the case of the container, only 64MB of that is
accessible, and the application reports that as a warning that I
missed.
This limit is just a default docker uses.

All started working as soon as I specified shm_size=256MB in my docker
compose file.

Thank you for your help.

Kind regards,
Wojciech

On Tue, Dec 10, 2024 at 10:22 AM Wojciech Bocer
<wojciech.bo...@gmail.com> wrote:
>
> Hello again,
>
> Thank both of you John and Paul for helping me out.
>
> I changed the mentioned macros and compiled valgrind. The outcome of
> the test is the same. However I can see additional debug output in the
> logs.
>
> There is a repeating pattern, Valgrind scans the same memory region
> and something happens there:
> scan 0x4fc1000-0x4fc4000 (12288)
> scan 0x53c4000-0x14dc4000 (262144000)
> --00:00:01:42.342 3477-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
>
> Now the valgrind will repeatedly output the last line.
>
> Below are some logs from 3 processes that produce extensive log files.
>
> Kind regards,
> Wojciech
>
> 1. Log file for process 3477 (260MB when valgrind killed):
>
> ==00:00:00:01.741 3477== Memcheck, a memory error detector
> ==00:00:00:01.741 3477== Copyright (C) 2002-2024, and GNU GPL'd, by
> Julian Seward et al.
> ==00:00:00:01.741 3477== Using Valgrind-3.24.0-fcdaa47426-20241101X
> and LibVEX; rerun with -h for copyright info
> ==00:00:00:01.741 3477== Command: bin/gm_server --master
> XXXXXXXXXXXXXXXXXXXXXXXX
> ==00:00:00:01.741 3477== Parent PID: 3461
> ==00:00:00:01.741 3477==
> --00:00:00:01.741 3477--
> --00:00:00:01.741 3477-- Valgrind options:
> --00:00:00:01.741 3477--    --log-file=/tmp/valgrind/memcheck-%p.log
> --00:00:00:01.741 3477--    --tool=memcheck
> --00:00:00:01.741 3477--    --leak-check=summary
> --00:00:00:01.741 3477--    --time-stamp=yes
> --00:00:00:01.741 3477--    --track-fds=no
> --00:00:00:01.741 3477--    --trace-signals=yes
> --00:00:00:01.741 3477--    --track-origins=no
> --00:00:00:01.741 3477--    --trace-children=yes
> --00:00:00:01.741 3477--
> --trace-children-skip=*/awk,*/bash,*/chattr,*/chmod,*/curl,*/date,*/du,*/expr,*/grep,*/ip,*/locale,*/logger,*/mkdir,*/mv,*/rm,*/sed,*/sh,*/sort,*/touch,*/wc
> --00:00:00:01.741 3477--    --vgdb=no
> --00:00:00:01.741 3477--    --error-limit=no
> --00:00:00:01.741 3477--    --verbose
> --00:00:00:01.741 3477-- Contents of /proc/version:
> --00:00:00:01.741 3477--   Linux version 6.11.9-100.fc39.x86_64
> (mockbuild@03ca63968fb540ceb027c83bbfe793be) (gcc (GCC) 13.3.1
> 20240913 (Red Hat 13.3.1-3), GNU ld version 2.40-14.fc39) #1 SMP
> PREEMPT_DYNAMIC Sun Nov 17 18:52:19 UTC 2024
> --00:00:00:01.741 3477--
> --00:00:00:01.741 3477-- Arch and hwcaps: X86, LittleEndian,
> x86-mmxext-sse1-sse2-sse3-lzcnt
> --00:00:00:01.741 3477-- Page sizes: currently 4096, max supported 4096
> --00:00:00:01.741 3477-- Valgrind library directory: 
> /usr/local/libexec/valgrind
> --00:00:00:01.750 3477-- sys_sigaction: sigNo 12, new 0xfeae4d34, old
> 0x0, new flags 0x4000000
> --00:00:00:01.750 3477-- sys_sigaction: sigNo 10, new 0xfeae4d34, old
> 0x0, new flags 0x4000000
> --00:00:00:01.751 3477-- sys_sigaction: sigNo 15, new 0xfeae4d34, old
> 0x0, new flags 0x4000000
> --00:00:00:01.752 3477-- sys_sigaction: sigNo 13, new 0xfeae4d34, old
> 0x0, new flags 0x4000000
> --00:00:00:01.752 3477-- sys_sigaction: sigNo 2, new 0xfeae4d34, old
> 0x0, new flags 0x4000000
> --00:00:00:01.753 3477-- sys_sigaction: sigNo 17, new 0xfeae4d34, old
> 0x0, new flags 0x4000000
> --00:00:00:01.754 3477-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0x0 (NULL)
> --00:00:00:01.754 3477--        oldset=0xFEAE4FCC 0000000000000000
> --00:00:00:01.757 3477-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0xFEAE4EA0 (fffffffe7ffee115)
> --00:00:01:42.040 3477-- sys_sigaction: sigNo 11, new 0x82cfdeec, old
> 0x0, new flags 0x0
> --00:00:01:42.040 3477-- sys_sigaction: sigNo 7, new 0x82cfdeec, old
> 0x0, new flags 0x0
> --00:00:01:42.040 3477-- sys_sigaction: sigNo 4, new 0x82cfdee4, old
> 0x0, new flags 0x0
> --00:00:01:42.040 3477-- sys_sigaction: sigNo 8, new 0x82cfdee4, old
> 0x0, new flags 0x0
> --00:00:01:42.040 3477-- sys_sigaction: sigNo 31, new 0x82cfdedc, old
> 0x0, new flags 0x0
> ==00:00:01:42.065 3477==
> ==00:00:01:42.065 3477== HEAP SUMMARY:
> ==00:00:01:42.065 3477==     in use at exit: 2,440 bytes in 378 blocks
> ==00:00:01:42.065 3477==   total heap usage: 3,807 allocs, 3,429
> frees, 430,504 bytes allocated
> ==00:00:01:42.065 3477==
> ==00:00:01:42.065 3477== Searching for pointers to 378 not-freed blocks
> scan 0x30d000-0x5d4000 (2912256)
> ptr=0x502ac10 -> block 368
> ptr=0x503b100 -> block 373
> ptr=0x50200b0 -> block 299
> ptr=0x5020150 -> block 301
> ptr=0x50201f0 -> block 303
> ptr=0x5020600 -> block 316
> ptr=0x5020560 -> block 314
> ptr=0x503b160 -> block 374
> ptr=0x501fcf0 -> block 287
> ptr=0x501fd90 -> block 289
> ptr=0x501fc50 -> block 285
> ptr=0x503b100 -> block 373
> ptr=0x5018d80 -> block 0
> ptr=0x5018dd0 -> block 1
> ptr=0x5018e20 -> block 2
> ptr=0x5018e70 -> block 3
> ptr=0x5018ed0 -> block 4
> ptr=0x5018f40 -> block 5
> ptr=0x5018f90 -> block 6
> ptr=0x5018fe0 -> block 7
> ptr=0x5019030 -> block 8
> ptr=0x5019080 -> block 9
> ptr=0x50190d0 -> block 10
> ...
> ptr=0x503b3b0 -> block 376
> ptr=0x501a0f3 -> block 61
> scan 0x5d4000-0x5dd000 (36864)
> ptr=0x502ac10 -> block 368
> ptr=0x5024b70 -> block 352
> ptr=0x502a9d0 -> block 364
> ptr=0x502aa70 -> block 365
> ptr=0x502aa70 -> block 365
> ptr=0x502aac0 -> block 366
> ptr=0x501d850 -> block 236
> ptr=0x501d8a0 -> block 237
> scan 0x4036000-0x4037000 (4096)
> scan 0x4037000-0x4038000 (4096)
> scan 0x4837000-0x4839000 (8192)
> scan 0x483d000-0x483e000 (4096)
> scan 0x4858000-0x4859000 (4096)
> scan 0x4861000-0x4862000 (4096)
> scan 0x4872000-0x4873000 (4096)
> scan 0x4873000-0x4875000 (8192)
> scan 0x494c000-0x494f000 (12288)
> scan 0x494f000-0x4950000 (4096)
> scan 0x4d97000-0x4d99000 (8192)
> scan 0x4d99000-0x4d9b000 (8192)
> scan 0x4db8000-0x4db9000 (4096)
> scan 0x4fb2000-0x4fb3000 (4096)
> scan 0x4fb3000-0x4fb8000 (20480)
> scan 0x4fbc000-0x4fbd000 (4096)
> scan 0x4fc1000-0x4fc4000 (12288)
> scan 0x53c4000-0x14dc4000 (262144000)
> --00:00:01:42.342 3477-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
> --00:00:01:42.342 3477-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
> --00:00:01:42.342 3477-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
>
> 2. Log file for process 3479 (335MB when valgrind killed):
>
> ==00:00:00:01.749 3479== Memcheck, a memory error detector
> ==00:00:00:01.749 3479== Copyright (C) 2002-2024, and GNU GPL'd, by
> Julian Seward et al.
> ==00:00:00:01.749 3479== Using Valgrind-3.24.0-fcdaa47426-20241101X
> and LibVEX; rerun with -h for copyright info
> ==00:00:00:01.749 3479== Command: bin/gm_server --master
> XXXXXXXXXXXXXXXXXXXXXXXX
> ==00:00:00:01.749 3479== Parent PID: 3461
> ==00:00:00:01.749 3479==
> --00:00:00:01.749 3479--
> --00:00:00:01.749 3479-- Valgrind options:
> --00:00:00:01.749 3479--    --log-file=/tmp/valgrind/memcheck-%p.log
> --00:00:00:01.749 3479--    --tool=memcheck
> --00:00:00:01.749 3479--    --leak-check=summary
> --00:00:00:01.749 3479--    --time-stamp=yes
> --00:00:00:01.749 3479--    --track-fds=no
> --00:00:00:01.749 3479--    --trace-signals=yes
> --00:00:00:01.749 3479--    --track-origins=no
> --00:00:00:01.749 3479--    --trace-children=yes
> --00:00:00:01.749 3479--
> --trace-children-skip=*/awk,*/bash,*/chattr,*/chmod,*/curl,*/date,*/du,*/expr,*/grep,*/ip,*/locale,*/logger,*/mkdir,*/mv,*/rm,*/sed,*/sh,*/sort,*/touch,*/wc
> --00:00:00:01.749 3479--    --vgdb=no
> --00:00:00:01.749 3479--    --error-limit=no
> --00:00:00:01.749 3479--    --verbose
> --00:00:00:01.749 3479-- Contents of /proc/version:
> --00:00:00:01.749 3479--   Linux version 6.11.9-100.fc39.x86_64
> (mockbuild@03ca63968fb540ceb027c83bbfe793be) (gcc (GCC) 13.3.1
> 20240913 (Red Hat 13.3.1-3), GNU ld version 2.40-14.fc39) #1 SMP
> PREEMPT_DYNAMIC Sun Nov 17 18:52:19 UTC 2024
> --00:00:00:01.749 3479--
> --00:00:00:01.749 3479-- Arch and hwcaps: X86, LittleEndian,
> x86-mmxext-sse1-sse2-sse3-lzcnt
> --00:00:00:01.749 3479-- Page sizes: currently 4096, max supported 4096
> --00:00:00:01.749 3479-- Valgrind library directory: 
> /usr/local/libexec/valgrind
> --00:00:00:01.759 3479-- sys_sigaction: sigNo 12, new 0xfeae4cf4, old
> 0x0, new flags 0x4000000
> --00:00:00:01.759 3479-- sys_sigaction: sigNo 10, new 0xfeae4cf4, old
> 0x0, new flags 0x4000000
> --00:00:00:01.759 3479-- sys_sigaction: sigNo 15, new 0xfeae4cf4, old
> 0x0, new flags 0x4000000
> --00:00:00:01.760 3479-- sys_sigaction: sigNo 13, new 0xfeae4cf4, old
> 0x0, new flags 0x4000000
> --00:00:00:01.760 3479-- sys_sigaction: sigNo 2, new 0xfeae4cf4, old
> 0x0, new flags 0x4000000
> --00:00:00:01.760 3479-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0x0 (NULL)
> --00:00:00:01.760 3479--        oldset=0xFEAE4FBC 0000000000000000
> --00:00:00:01.762 3479-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0xFEAE4E60 (fffffffe7fffe115)
> --00:00:00:01.765 3479-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0xFEAE4FBC (0000000000000000)
> --00:00:01:33.725 3479-- async signal handler: signal=15, vgtid=3479,
> tid=1, si_code=0, exitreason VgSrc_None
> --00:00:01:33.725 3479-- interrupted_syscall: tid=1, ip=0x580d540d,
> restart=False, sres.isErr=True, sres.val=4
> --00:00:01:33.725 3479--   completed, but uncommitted: committing
> --00:00:01:33.725 3479-- delivering signal 15 (SIGTERM):0 to thread 1
> --00:00:01:33.725 3479-- push_signal_frame (thread 1): signal 15
> ==00:00:01:33.725 3479==    at 0x4E6D47B: __clock_nanosleep_time64
> (clock_nanosleep.c:62)
> ==00:00:01:33.725 3479==    by 0x4E80024: __nanosleep64 (nanosleep.c:25)
> ==00:00:01:33.725 3479==    by 0x4E80024: nanosleep (nanosleep.c:42)
> ==00:00:01:33.725 3479==    by 0x4E92263: sleep (sleep.c:55)
> ==00:00:01:33.725 3479==    by 0x1CF4A9: harmony_process (harmony.c:1320)
> ==00:00:01:33.725 3479==    by 0x1D0E02: harmony_run (harmony.c:1811)
> ==00:00:01:33.725 3479==    by 0x29BDC3: main (main.c:1054)
> --00:00:01:33.726 3479-- VG_(sigframe_destroy) (thread 1): isRT=0
> valid magic; EIP=0x401b002
> --00:00:01:33.818 3479-- sys_sigaction: sigNo 11, new 0x82cfdeec, old
> 0x0, new flags 0x0
> --00:00:01:33.818 3479-- sys_sigaction: sigNo 7, new 0x82cfdeec, old
> 0x0, new flags 0x0
> --00:00:01:33.818 3479-- sys_sigaction: sigNo 4, new 0x82cfdee4, old
> 0x0, new flags 0x0
> --00:00:01:33.818 3479-- sys_sigaction: sigNo 8, new 0x82cfdee4, old
> 0x0, new flags 0x0
> --00:00:01:33.818 3479-- sys_sigaction: sigNo 31, new 0x82cfdedc, old
> 0x0, new flags 0x0
> ==00:00:01:33.833 3479==
> ==00:00:01:33.833 3479== HEAP SUMMARY:
> ==00:00:01:33.833 3479==     in use at exit: 2,440 bytes in 378 blocks
> ==00:00:01:33.833 3479==   total heap usage: 3,810 allocs, 3,432
> frees, 452,136 bytes allocated
> ==00:00:01:33.833 3479==
> ==00:00:01:33.833 3479== Searching for pointers to 378 not-freed blocks
> scan 0x30d000-0x5d4000 (2912256)
> ptr=0x502ac10 -> block 368
> ptr=0x503b100 -> block 373
> ptr=0x50200b0 -> block 299
> ptr=0x5020150 -> block 301
> ptr=0x50201f0 -> block 303
> ptr=0x5020600 -> block 316
> ptr=0x5020560 -> block 314
> ptr=0x503b160 -> block 374
> ptr=0x501fcf0 -> block 287
> ptr=0x501fd90 -> block 289
> ptr=0x501fc50 -> block 285
> ptr=0x503b100 -> block 373
> ptr=0x5018d80 -> block 0
> ptr=0x5018dd0 -> block 1
> ptr=0x5018e20 -> block 2
> ptr=0x5018e70 -> block 3
> ptr=0x5018ed0 -> block 4
> ptr=0x5018f40 -> block 5
> ptr=0x5018f90 -> block 6
> ptr=0x5018fe0 -> block 7
> ptr=0x5019030 -> block 8
> ptr=0x5019080 -> block 9
> ptr=0x50190d0 -> block 10
> ...
> ptr=0x503b3b0 -> block 376
> ptr=0x501a0f3 -> block 61
> scan 0x5d4000-0x5dd000 (36864)
> ptr=0x502ac10 -> block 368
> ptr=0x5024b70 -> block 352
> ptr=0x502a9d0 -> block 364
> ptr=0x502aa70 -> block 365
> ptr=0x502aa70 -> block 365
> ptr=0x502aac0 -> block 366
> ptr=0x501d850 -> block 236
> ptr=0x501d8a0 -> block 237
> scan 0x4036000-0x4037000 (4096)
> scan 0x4037000-0x4038000 (4096)
> scan 0x4837000-0x4839000 (8192)
> scan 0x483d000-0x483e000 (4096)
> scan 0x4858000-0x4859000 (4096)
> scan 0x4861000-0x4862000 (4096)
> scan 0x4872000-0x4873000 (4096)
> scan 0x4873000-0x4875000 (8192)
> scan 0x494c000-0x494f000 (12288)
> scan 0x494f000-0x4950000 (4096)
> scan 0x4d97000-0x4d99000 (8192)
> scan 0x4d99000-0x4d9b000 (8192)
> scan 0x4db8000-0x4db9000 (4096)
> scan 0x4fb2000-0x4fb3000 (4096)
> scan 0x4fb3000-0x4fb8000 (20480)
> scan 0x4fbc000-0x4fbd000 (4096)
> scan 0x4fc1000-0x4fc4000 (12288)
> scan 0x53c4000-0x14dc4000 (262144000)
> --00:00:01:34.000 3479-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
> --00:00:01:34.000 3479-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
> --00:00:01:34.000 3479-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
>
> 3. Log file for process 3491 (142MB when valgrind killed):
>
> ==00:00:00:02.218 3491== Memcheck, a memory error detector
> ==00:00:00:02.218 3491== Copyright (C) 2002-2024, and GNU GPL'd, by
> Julian Seward et al.
> ==00:00:00:02.218 3491== Using Valgrind-3.24.0-fcdaa47426-20241101X
> and LibVEX; rerun with -h for copyright info
> ==00:00:00:02.218 3491== Command: bin/gm_server --master
> XXXXXXXXXXXXXXXXXXXXXXXX
> ==00:00:00:02.218 3491== Parent PID: 3461
> ==00:00:00:02.218 3491==
> --00:00:00:02.218 3491--
> --00:00:00:02.218 3491-- Valgrind options:
> --00:00:00:02.218 3491--    --log-file=/tmp/valgrind/memcheck-%p.log
> --00:00:00:02.218 3491--    --tool=memcheck
> --00:00:00:02.218 3491--    --leak-check=summary
> --00:00:00:02.218 3491--    --time-stamp=yes
> --00:00:00:02.218 3491--    --track-fds=no
> --00:00:00:02.218 3491--    --trace-signals=yes
> --00:00:00:02.218 3491--    --track-origins=no
> --00:00:00:02.218 3491--    --trace-children=yes
> --00:00:00:02.218 3491--
> --trace-children-skip=*/awk,*/bash,*/chattr,*/chmod,*/curl,*/date,*/du,*/expr,*/grep,*/ip,*/locale,*/logger,*/mkdir,*/mv,*/rm,*/sed,*/sh,*/sort,*/touch,*/wc
> --00:00:00:02.218 3491--    --vgdb=no
> --00:00:00:02.218 3491--    --error-limit=no
> --00:00:00:02.218 3491--    --verbose
> --00:00:00:02.218 3491-- Contents of /proc/version:
> --00:00:00:02.218 3491--   Linux version 6.11.9-100.fc39.x86_64
> (mockbuild@03ca63968fb540ceb027c83bbfe793be) (gcc (GCC) 13.3.1
> 20240913 (Red Hat 13.3.1-3), GNU ld version 2.40-14.fc39) #1 SMP
> PREEMPT_DYNAMIC Sun Nov 17 18:52:19 UTC 2024
> --00:00:00:02.218 3491--
> --00:00:00:02.218 3491-- Arch and hwcaps: X86, LittleEndian,
> x86-mmxext-sse1-sse2-sse3-lzcnt
> --00:00:00:02.218 3491-- Page sizes: currently 4096, max supported 4096
> --00:00:00:02.218 3491-- Valgrind library directory: 
> /usr/local/libexec/valgrind
> --00:00:00:02.227 3491-- sys_sigaction: sigNo 12, new 0xfeae4d04, old
> 0x0, new flags 0x4000000
> --00:00:00:02.228 3491-- sys_sigaction: sigNo 10, new 0xfeae4d04, old
> 0x0, new flags 0x4000000
> --00:00:00:02.228 3491-- sys_sigaction: sigNo 15, new 0xfeae4d04, old
> 0x0, new flags 0x4000000
> --00:00:00:02.229 3491-- sys_sigaction: sigNo 13, new 0xfeae4d04, old
> 0x0, new flags 0x4000000
> --00:00:00:02.229 3491-- sys_sigaction: sigNo 2, new 0xfeae4d04, old
> 0x0, new flags 0x4000000
> --00:00:00:02.229 3491-- sys_sigaction: sigNo 17, new 0xfeae4d04, old
> 0x0, new flags 0x4000000
> --00:00:00:02.230 3491-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0x0 (NULL)
> --00:00:00:02.230 3491--        oldset=0xFEAE4FBC 0000000000000000
> --00:00:00:02.231 3491-- do_setmask: tid = 1 how = 2 (SIG_SETMASK),
> newset = 0xFEAE4E70 (fffffffe7ffee115)
> --00:00:02:02.494 3491-- sys_sigaction: sigNo 11, new 0x82cfdeec, old
> 0x0, new flags 0x0
> --00:00:02:02.494 3491-- sys_sigaction: sigNo 7, new 0x82cfdeec, old
> 0x0, new flags 0x0
> --00:00:02:02.494 3491-- sys_sigaction: sigNo 4, new 0x82cfdee4, old
> 0x0, new flags 0x0
> --00:00:02:02.494 3491-- sys_sigaction: sigNo 8, new 0x82cfdee4, old
> 0x0, new flags 0x0
> --00:00:02:02.494 3491-- sys_sigaction: sigNo 31, new 0x82cfdedc, old
> 0x0, new flags 0x0
> ==00:00:02:02.525 3491==
> ==00:00:02:02.525 3491== HEAP SUMMARY:
> ==00:00:02:02.525 3491==     in use at exit: 20,649 bytes in 576 blocks
> ==00:00:02:02.525 3491==   total heap usage: 5,562 allocs, 4,986
> frees, 595,523 bytes allocated
> ==00:00:02:02.525 3491==
> ==00:00:02:02.526 3491== Searching for pointers to 576 not-freed blocks
> scan 0x30d000-0x5d4000 (2912256)
> ptr=0x502ac10 -> block 377
> ptr=0x503b100 -> block 382
> ptr=0x50200b0 -> block 308
> ptr=0x5020150 -> block 310
> ptr=0x50201f0 -> block 312
> ptr=0x5020600 -> block 325
> ptr=0x5020560 -> block 323
> ptr=0x503b160 -> block 383
> ptr=0x501fcf0 -> block 296
> ptr=0x501fd90 -> block 298
> ptr=0x501fc50 -> block 294
> ptr=0x503b100 -> block 382
> ptr=0x5018d80 -> block 9
> ptr=0x5018dd0 -> block 10
> ...
> ptr=0x50b2770 -> block 558
> ptr=0x50b2880 -> block 560
> ptr=0x50b14d0 -> block 539
> ptr=0x50b09b0 -> block 538
> ptr=0x50a2f40 -> block 499
> scan 0x4036000-0x4037000 (4096)
> scan 0x4037000-0x4038000 (4096)
> scan 0x4837000-0x4839000 (8192)
> scan 0x483d000-0x483e000 (4096)
> scan 0x4858000-0x4859000 (4096)
> scan 0x4861000-0x4862000 (4096)
> scan 0x4872000-0x4873000 (4096)
> scan 0x4873000-0x4875000 (8192)
> scan 0x494c000-0x494f000 (12288)
> scan 0x494f000-0x4950000 (4096)
> scan 0x4d97000-0x4d99000 (8192)
> scan 0x4d99000-0x4d9b000 (8192)
> scan 0x4db8000-0x4db9000 (4096)
> scan 0x4fb2000-0x4fb3000 (4096)
> scan 0x4fb3000-0x4fb8000 (20480)
> scan 0x4fbc000-0x4fbd000 (4096)
> scan 0x4fc1000-0x4fc4000 (12288)
> scan 0x53c4000-0x14dc4000 (262144000)
> --00:00:02:02.918 3491-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
> --00:00:02:02.918 3491-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
> --00:00:02:02.918 3491-- sync signal handler: signal=7, si_code=2,
> EIP=0x0, eip=0x58002e8d, from kernel
>
> On Mon, Dec 9, 2024 at 8:28 AM Paul Floyd via Valgrind-users
> <valgrind-users@lists.sourceforge.net> wrote:
> >
> >
> >
> > On 05-12-24 14:19, Wojciech Bocer wrote:
> > > Hello,
> > >
> > > I have a problem with Valgrind taking a lot of time trying to
> > > determine if there are memory leaks before it exits.
> >
> >
> > Roughly speaking leak detection involves scanning though all accessible
> > memory using pointer-size alignment to look for any pointers to unfreed
> > memory blocks. This code does handle segfaults.
> >
> > I don't have any real idea why the combination of x86 and Docker gives
> > large numbers of segfaults and a major slowdown.
> >
> > I suggest that you get the source for Valgrind and set these macros in
> > mc_leakcheck.c to 1
> >
> >
> > // Define to debug the memory-leak-detector.
> > #define VG_DEBUG_FIND_CHUNK 0
> > #define VG_DEBUG_LEAKCHECK 0
> > #define VG_DEBUG_CLIQUE    0
> >
> > and then build Valgrind.
> >
> > A+
> > Paul
> >
> >
> >
> > _______________________________________________
> > Valgrind-users mailing list
> > Valgrind-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/valgrind-users


_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to