Skip to content

Instantly share code, notes, and snippets.

@pnkfelix
Created April 25, 2023 19:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pnkfelix/7f746eb87d5dea1aa58ed5affc22ac44 to your computer and use it in GitHub Desktop.
Save pnkfelix/7f746eb87d5dea1aa58ed5affc22ac44 to your computer and use it in GitHub Desktop.
15-12-44 tmp/fresh % echo "a file" > file-1.txt
15-12-55 tmp/fresh % echo "another file" > file-2.txt
15-12-58 tmp/fresh % ls
file-1.txt
file-2.txt
15-13-00 tmp/fresh % export VALGRIND_LIB=/media/pnkfelix/Krabcake/libexec/valgrind; rr ./bin/valgrind /usr/bin/ls
rr: Saving execution to trace directory `/home/pnkfelix/.local/share/rr/valgrind-5'.
execve failed: './bin/valgrind' (or interpreter) not found (ENOENT)
15-13-06 tmp/fresh [ERROR#69] % export VALGRIND_LIB=/media/pnkfelix/Krabcake/libexec/valgrind; rr valgrind /usr/bin/ls
rr: Saving execution to trace directory `/home/pnkfelix/.local/share/rr/valgrind-6'.
==649438== Memcheck, a memory error detector
==649438== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==649438== Using Valgrind-3.21.0.GIT and LibVEX; rerun with -h for copyright info
==649438== Command: /usr/bin/ls
==649438==
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
--649438-- Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0xe
==649438== Syscall param msync(start) points to unaddressable byte(s)
==649438== at 0x49D6C97: msync (msync.c:25)
==649438== by 0x485B0F0: init_process (syscallbuf.c:796)
==649438== by 0x400647D: call_init.part.0 (dl-init.c:70)
==649438== by 0x4006567: call_init (dl-init.c:33)
==649438== by 0x4006567: _dl_init (dl-init.c:117)
==649438== by 0x40202E9: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
==649438== Address 0x70000000 is not stack'd, malloc'd or (recently) free'd
==649438==
file-1.txt
file-2.txt
==649438==
==649438== HEAP SUMMARY:
==649438== in use at exit: 20,430 bytes in 9 blocks
==649438== total heap usage: 46 allocs, 37 frees, 59,985 bytes allocated
==649438==
==649438== LEAK SUMMARY:
==649438== definitely lost: 0 bytes in 0 blocks
==649438== indirectly lost: 0 bytes in 0 blocks
==649438== possibly lost: 0 bytes in 0 blocks
==649438== still reachable: 20,430 bytes in 9 blocks
==649438== suppressed: 0 bytes in 0 blocks
==649438== Rerun with --leak-check=full to see details of leaked memory
==649438==
==649438== For lists of detected and suppressed errors, rerun with: -s
==649438== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
[FATAL src/Task.cc:845:enter_syscall()]
(task 649438 (rec:649438) at time 8090)
-> Assertion `session().is_recording() && !is_deterministic_signal(this)' failed to hold. got unexpected signal SIGSEGV
ail of trace dump:
{
real_time:368488.400325 global_time:8070, event:`SYSCALL: getpid' (state:ENTERING_SYSCALL) tid:649438, ticks:723880369
rax:0xffffffffffffffda rbx:0x582850e0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x0 rbp:0x46 rsp:0x1002dadca8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1002dadd40 r13:0x3d r14:0x58222969 r15:0x582850e0 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x27 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400352 global_time:8071, event:`SYSCALL: getpid' (state:EXITING_SYSCALL) tid:649438, ticks:723880369
rax:0x9e8de rbx:0x582850e0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x0 rbp:0x46 rsp:0x1002dadca8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1002dadd40 r13:0x3d r14:0x58222969 r15:0x582850e0 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x27 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400451 global_time:8072, event:`SYSCALL: write' (state:ENTERING_SYSCALL) tid:649438, ticks:723880727
rax:0xffffffffffffffda rbx:0x1 rcx:0xffffffffffffffff rdx:0x47 rsi:0x582850e0 rdi:0x403 rbp:0x582850e0 rsp:0x1002dadde8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400484 global_time:8073, event:`SYSCALL: write' (state:EXITING_SYSCALL) tid:649438, ticks:723880727
rax:0x47 rbx:0x1 rcx:0xffffffffffffffff rdx:0x47 rsi:0x582850e0 rdi:0x403 rbp:0x582850e0 rsp:0x1002dadde8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400590 global_time:8074, event:`SYSCALL: getpid' (state:ENTERING_SYSCALL) tid:649438, ticks:723880741
rax:0xffffffffffffffda rbx:0x582850e0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x0 rbp:0x45 rsp:0x1002dadc68 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1002dadd00 r13:0x3d r14:0x58222969 r15:0x582850e0 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x27 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400618 global_time:8075, event:`SYSCALL: getpid' (state:EXITING_SYSCALL) tid:649438, ticks:723880741
rax:0x9e8de rbx:0x582850e0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x0 rbp:0x45 rsp:0x1002dadc68 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1002dadd00 r13:0x3d r14:0x58222969 r15:0x582850e0 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x27 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400717 global_time:8076, event:`SYSCALL: write' (state:ENTERING_SYSCALL) tid:649438, ticks:723881196
rax:0xffffffffffffffda rbx:0x1 rcx:0xffffffffffffffff rdx:0x4a rsi:0x582850e0 rdi:0x403 rbp:0x582850e0 rsp:0x1002dadda8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x581e9200 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.400749 global_time:8077, event:`SYSCALL: write' (state:EXITING_SYSCALL) tid:649438, ticks:723881196
rax:0x4a rbx:0x1 rcx:0xffffffffffffffff rdx:0x4a rsi:0x582850e0 rdi:0x403 rbp:0x582850e0 rsp:0x1002dadda8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x581e9200 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.402801 global_time:8078, event:`SYSCALL: write' (state:ENTERING_SYSCALL) tid:649438, ticks:732320118
rax:0xffffffffffffffda rbx:0x582850d0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x582850e0 rdi:0x403 rbp:0x582850e0 rsp:0x1002dadeb8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x0 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.402843 global_time:8079, event:`SYSCALL: write' (state:EXITING_SYSCALL) tid:649438, ticks:732320118
rax:0x0 rbx:0x582850d0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x582850e0 rdi:0x403 rbp:0x582850e0 rsp:0x1002dadeb8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x0 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.402945 global_time:8080, event:`SYSCALL: getpid' (state:ENTERING_SYSCALL) tid:649438, ticks:732320127
rax:0xffffffffffffffda rbx:0x1 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x0 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x27 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.402973 global_time:8081, event:`SYSCALL: getpid' (state:EXITING_SYSCALL) tid:649438, ticks:732320127
rax:0x9e8de rbx:0x1 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x0 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x27 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403072 global_time:8082, event:`SYSCALL: close' (state:ENTERING_SYSCALL) tid:649438, ticks:732320135
rax:0xffffffffffffffda rbx:0x0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x406 rbp:0x1 rsp:0x1002dade98 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x3 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403108 global_time:8083, event:`SYSCALL: close' (state:EXITING_SYSCALL) tid:649438, ticks:732320135
rax:0x0 rbx:0x0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x406 rbp:0x1 rsp:0x1002dade98 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x3 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403208 global_time:8084, event:`SYSCALL: unlink' (state:ENTERING_SYSCALL) tid:649438, ticks:732320140
rax:0xffffffffffffffda rbx:0x9e8de rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x10023872f0 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x57 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403285 global_time:8085, event:`SYSCALL: unlink' (state:EXITING_SYSCALL) tid:649438, ticks:732320140
rax:0x0 rbx:0x9e8de rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x10023872f0 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x57 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403387 global_time:8086, event:`SYSCALL: unlink' (state:ENTERING_SYSCALL) tid:649438, ticks:732320143
rax:0xffffffffffffffda rbx:0x9e8de rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x1002387360 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x57 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403431 global_time:8087, event:`SYSCALL: unlink' (state:EXITING_SYSCALL) tid:649438, ticks:732320143
rax:0x0 rbx:0x9e8de rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x1002387360 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x57 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403535 global_time:8088, event:`SYSCALL: unlink' (state:ENTERING_SYSCALL) tid:649438, ticks:732320146
rax:0xffffffffffffffda rbx:0x9e8de rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x10023873d0 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x57 fs_base:0x0 gs_base:0x0
}
{
real_time:368488.403574 global_time:8089, event:`SYSCALL: unlink' (state:EXITING_SYSCALL) tid:649438, ticks:732320146
rax:0x0 rbx:0x9e8de rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x10023873d0 rbp:0x1 rsp:0x1002dadea8 r8:0x0 r9:0x0 r10:0x0 r11:0x246 r12:0x1c10 r13:0x9e8de r14:0x58222969 r15:0x1 rip:0x58056ce9 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x57 fs_base:0x0 gs_base:0x0
}
=== Start rr backtrace:
rr(_ZN2rr13dump_rr_stackEv+0x60)[0x55b04cc7fc58]
rr(_ZN2rr9GdbServer15emergency_debugEPNS_4TaskE+0xfb)[0x55b04ca6fdb3]
rr(+0x3f8f4b)[0x55b04caaaf4b]
rr(_ZN2rr21EmergencyDebugOstreamD1Ev+0x63)[0x55b04caab1f1]
rr(_ZN2rr4Task13enter_syscallEv+0x308)[0x55b04cc32870]
rr(_ZN2rr18AutoRemoteSyscalls12syscall_baseEiRNS_9RegistersE+0x514)[0x55b04c9ebd30]
rr(_ZN2rr18AutoRemoteSyscalls14syscall_helperILi3EEEliRNS_9RegistersE+0x2c)[0x55b04c9e1f7c]
rr(_ZN2rr18AutoRemoteSyscalls14syscall_helperILi2ElJEEEliRNS_9RegistersET0_DpT1_+0x43)[0x55b04cc4f997]
rr(_ZN2rr18AutoRemoteSyscalls14syscall_helperILi1ENS_10remote_ptrIvEEJlEEEliRNS_9RegistersET0_DpT1_+0x49)[0x55b04cc4e083]
rr(_ZN2rr18AutoRemoteSyscalls18infallible_syscallIJNS_10remote_ptrIvEElEEEliDpT_+0x90)[0x55b04cc470aa]
rr(_ZN2rr4Task17unmap_buffers_forERNS_18AutoRemoteSyscallsEPS0_NS_10remote_ptrI14syscallbuf_hdrEE+0x84)[0x55b04cc31d5a]
rr(_ZN2rr4Task15destroy_buffersEPS0_S1_+0xc2)[0x55b04cc31b96]
rr(_ZN2rr4Task15destroy_buffersEv+0x27)[0x55b04cb52b3f]
rr(+0x462b5d)[0x55b04cb14b5d]
rr(+0x47301d)[0x55b04cb2501d]
rr(+0x464096)[0x55b04cb16096]
rr(+0x47e638)[0x55b04cb30638]
rr(+0x464176)[0x55b04cb16176]
rr(_ZN2rr19rec_prepare_syscallEPNS_10RecordTaskE+0x87)[0x55b04cb1621b]
rr(_ZN2rr13RecordSession21syscall_state_changedEPNS_10RecordTaskEPNS0_9StepStateE+0x3af)[0x55b04caf690b]
rr(_ZN2rr13RecordSession11record_stepEv+0x42c)[0x55b04cafd52c]
rr(+0x43ce35)[0x55b04caeee35]
rr(_ZN2rr13RecordCommand3runERSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS7_EE+0x426)[0x55b04caefc76]
rr(main+0x278)[0x55b04cc9b544]
/lib/x86_64-linux-gnu/libc.so.6(+0x29d90)[0x7f45c0229d90]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80)[0x7f45c0229e40]
rr(_start+0x25)[0x55b04c9b6735]
=== End rr backtrace
Launch gdb with
gdb '-l' '10000' '-ex' 'set sysroot /' '-ex' 'target extended-remote 127.0.0.1:59614' /media/pnkfelix/Krabcake/libexec/valgrind/memcheck-amd64-linux
C-c C-c
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment