https://bugs.kde.org/show_bug.cgi?id=377006
--- Comment #4 from zephyrus00jp <ishik...@yk.rim.or.jp> --- Created attachment 104424 --> https://bugs.kde.org/attachment.cgi?id=104424&action=edit log of segfault failure under 4.9.x series kernel (debian). with --trace-syscalls=yes This is under 4.9.x. The log file by running a shell script that contains the following command with bash -vx the_script_file 2>&1 | tee /tmp/t-log strace -ff valgrind --verbose --trace-syscalls=yes --trace-signals=yes --show-mismatched-frees=no --trace-children=yes /NREF-COMM-CENTRAL/objdir-tb3/dist/bin/thunderbird-bin "--trace-syscalls" ought to show the syscalls executed by the traced program, namely, thunderbird-binary. I see the message about such syscalls written by write(1027, ...) by valgrind. Because of the way the log was captured, the trace of |write| by strace is immediately followed by the string written by |write|. In any case, the following last portion of the log suggests to me that it is indeed valgrind that is causing the mysterious crash. Isn't it? --- begin quote ... write(1027, "SYSCALL[3810,1](202) ... [async]"..., 49SYSCALL[3810,1](202) ... [async] --> Success(0x0)) = 49 write(1027, " ", 1 ) = 1 write(1027, "\n", 1 ) = 1 mmap(0x802fb0000, 196608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x802fb0000 munmap(0x802f90000, 131072) = 0 gettid() = 3810 write(1029, "Q", 1) = 1 gettid() = 3810 read(1028, "Q", 1) = 1 gettid() = 3810 rt_sigprocmask(SIG_SETMASK, ~[], ~[KILL STOP], 8) = 0 rt_sigtimedwait(~[], 0x802f8de20, {tv_sec=0, tv_nsec=0}, 8) = -1 EAGAIN (Resource temporarily unavailable) rt_sigprocmask(SIG_SETMASK, ~[KILL STOP], NULL, 8) = 0 gettid() = 3810 mmap(0x802d3d000, 16384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x802d3d000 getpid() = 3810 write(1027, "--3810-- REDIR: 0x52e68b0 (libst"..., 115--3810-- REDIR: 0x52e68b0 (libstdc++.so.6:operator delete(void*)) redirected to 0x4c2d19c (operator delete(void*)) ) = 115 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xffeffa22c} --- +++ killed by SIGSEGV +++ /home/ishikawa/bin/run-valgrind-thunderbird.sh: line 13: 3808 Segmentation fault strace -ff valgrind --verbose --trace-syscalls=yes --trace-signals=yes --show-mismatched-frees=no --trace-children=yes /NREF-COMM-CENTRAL/objdir-tb3/dist/bin/thunderbird-bin --- end quote The address reported is slightly changed: I think it is due to the slight change in the source code.. final error in the 4.9.x series: The following is the old address reported in sigsegv. gettid() = 3174 mmap(0x803041000, 16384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, 0, 0) = 0x803041000 getpid() = 3174 write(1027, "--3174-- REDIR: 0x52e68b0 (libst"..., 115) = 115 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xffeffa24c} --- +++ killed by SIGSEGV +++ The address in SIGSEGV is interesting: >From the old log: --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xffeffa24c} --- >From the current log: --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xffeffa22c} --- It is BELOW the last (anonymous) map (reported in the old log) --- begin >From 4.9.x series kernel: Failure case ... 806203000-806334000 rwxp 00000000 00:00 0 806af9000-806ce2000 rwxp 00000000 00:00 0 <-- the si_addr is after this. ffeffe000-fff001000 rw-p 00000000 00:00 0 <---the si_addr is before this. 7ffd03470000-7ffd03492000 rw-p 00000000 00:00 0 [stack] 7ffd034ba000-7ffd034bc000 r--p 00000000 00:00 0 [vvar] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] (gdb) cont --- end Hope this helps. -- You are receiving this mail because: You are watching all bug changes.