Skip to content

Commit

Permalink
The last two tests; Not yet fixed, still failing if enabled.
Browse files Browse the repository at this point in the history
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
bernhardu committed Jun 24, 2021
1 parent 1d77c6f commit 30e13b8
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -535,8 +535,8 @@ if (asan)
set(RR_FLAGS "${ASAN_FLAGS} ${RR_FLAGS}")

# timeout 800 exceeded
list(APPEND DISABLED_TESTS nested_detach-no-syscallbuf)
list(APPEND DISABLED_TESTS nested_detach-32-no-syscallbuf)
list(APPEND DISABLED_TESTS nested_detach-no-syscallbuf)
list(APPEND DISABLED_TESTS nested_detach-32-no-syscallbuf)

endif()

Expand Down

0 comments on commit 30e13b8

Please sign in to comment.