Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The last two tests; Not yet fixed, still failing if enabled.
These two tests are stuck: nested_detach-no-syscallbuf nested_detach-32-no-syscallbuf For some reason just the no-syscallbuf variants get stuck, the regular ones succeed. $ bin/rr record -n bin/rr record --nested=detach bin/simple PID 1305400 uses 100% CPU, until timeout kills all. 1305387 └─ bin/rr record -n bin/rr record --nested=detach bin/simple 12 1305399 ├─ bin/rr record --nested=detach bin/simple 1 1305400 └─ bin/rr record --nested=detach bin/simple 1 $ gdb -q --pid 1305400 (gdb) add-symbol-file /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0 0x7f818ad37a60 (gdb) add-symbol-file .../x86_64_asan/obj/bin/rr 0x564caa04e830 (gdb) add-symbol-file .../x86_64_asan/obj/lib/rr/librrpreload.so 0x7f818ad030d0 (gdb) stepi 0x00007f818ad50339 4150 int res = REAL(pthread_mutex_lock)(m); 1: x/i $pc => 0x7f818ad50339 <__interceptor_pthread_mutex_lock(void*)+25>: jmp *0xf4311(%rip) # 0x7f818ae44650 (gdb) bt #0 0x00007f818ad50339 in __interceptor_pthread_mutex_lock (m=<optimized out>) at ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4150 #1 __interceptor_pthread_mutex_lock (m=<optimized out>) at ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4146 #2 0x0000564caa0e2ddc in rr::CompressedWriter::CompressedWriter (this=0x6110000002c0, filename=..., block_size=1048576, num_threads=1) at .../rr/src/CompressedWriter.cc:62 #3 0x0000564caa5a9453 in rr::TraceWriter::TraceWriter (this=0x619000003380, file_name=..., output_trace_dir=..., ticks_semantics_=rr::TICKS_RETIRED_CONDITIONAL_BRANCHES) at .../rr/src/TraceStream.cc:1307 #4 0x0000564caa2b9ed2 in rr::RecordSession::RecordSession (this=0x619000003280, exe_path=..., argv=..., envp=..., disable_cpuid_features=..., syscallbuf=rr::RecordSession::ENABLE_SYSCALL_BUF, syscallbuf_desched_sig=30, bind_cpu=rr::BIND_CPU, output_trace_dir=..., trace_id=0x0, use_audit=false, unmap_vdso=false) at .../rr/src/RecordSession.cc:2296 #5 0x0000564caa2b92ea in rr::RecordSession::create (argv=..., extra_env=..., disable_cpuid_features=..., syscallbuf=rr::RecordSession::ENABLE_SYSCALL_BUF, syscallbuf_desched_sig=30 '\036', bind_cpu=rr::BIND_CPU, output_trace_dir=..., trace_id=0x0, use_audit=false, unmap_vdso=false, force_asan_active=false) at .../rr/src/RecordSession.cc:2261 #6 0x0000564caa29cd01 in rr::record (args=..., flags=...) at .../rr/src/RecordCommand.cc:632 #7 0x0000564caa29e90f in rr::RecordCommand::run (this=0x564caa956fe0, args=...) at .../rr/src/RecordCommand.cc:791 #8 0x0000564caa614909 in main (argc=4, argv=0x7ffd2a91dbe8) at .../rr/src/main.cc:271 ... (gdb) stepi pthread_mutex_lock (mutex=0x6110000002c8) at .../rr/src/preload/overrides.c:24 24 mutex->__data.__kind &= ~PTHREAD_MUTEX_PRIO_INHERIT_NP; 1: x/i $pc => 0x7f818ad08660 <pthread_mutex_lock>: mov 0x4ba9(%rip),%rax # 0x7f818ad0d210 (gdb) bt #0 pthread_mutex_lock (mutex=0x6110000002c8) at .../rr/src/preload/overrides.c:24 #1 0x0000564caa0e2ddc in rr::CompressedWriter::CompressedWriter (this=0x6110000002c0, filename=..., block_size=1048576, num_threads=1) at .../rr/src/CompressedWriter.cc:62 #2 0x0000564caa5a9453 in rr::TraceWriter::TraceWriter (this=0x619000003380, file_name=..., output_trace_dir=..., ticks_semantics_=rr::TICKS_RETIRED_CONDITIONAL_BRANCHES) at .../rr/src/TraceStream.cc:1307 ... (gdb) stepi 74 return __pthread_mutex_lock(mutex); 1: x/i $pc => 0x7f818ad08678 <pthread_mutex_lock+24>: jmp 0x7f818ad03070 (gdb) bt #0 pthread_mutex_lock (mutex=0x6110000002c8) at .../rr/src/preload/overrides.c:74 #1 0x0000564caa0e2ddc in rr::CompressedWriter::CompressedWriter (this=0x6110000002c0, filename=..., block_size=1048576, num_threads=1) at .../rr/src/CompressedWriter.cc:62 #2 0x0000564caa5a9453 in rr::TraceWriter::TraceWriter (this=0x619000003380, file_name=..., output_trace_dir=..., ticks_semantics_=rr::TICKS_RETIRED_CONDITIONAL_BRANCHES) at .../rr/src/TraceStream.cc:1307 ... (gdb) print environ $1 = (char **) 0x0 $ cat /proc/1305400/environ | tr '\0' '\n' | grep LD_PRELOAD LD_PRELOAD=libasan.so.6:.../x86_64_asan/obj/bin/../lib/rr/librrpreload.so:::
- Loading branch information