rr-debugger / rr-debugger/rr

check_ticks_consistency() intermittently failing on my new AMD PC

Open
#3,523 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
10.7k
Forks
662
Avg merge
2d 3h
Merged PRs (30d)
2

Description

I am trying to record a rr trace on my new AMD workstation (Zen3 threadripper pro) and it records without any isssues but when I am trying to record it; it intermittently fails in check_ticks_consistency() check (see below). This PC is running linux mint version Linux Mint 21.1 Cinnamon

Error message:
_[FATAL src/ReplaySession.cc:1184:check_ticks_consistency()]
(task 277857 (rec:268583) at time 648470)
-> Assertion ticks_now == trace_ticks' failed to hold. ticks mismatch for 'SYSCALL: futex'; expected 304402, got 304339 Tail of trace dump: { real_time:33382.950088 global_time:648450, event:SYSCALLBUF_ABORT_COMMIT' tid:268580, ticks:26306386
}
{
real_time:33382.950123 global_time:648451, event:SYSCALL: rrcall_notify_syscall_hook_exit' (state:ENTERING_SYSCALL) tid:268580, ticks:26306401 rax:0xffffffffffffffda rbx:0x7fed172fffa0 rcx:0xffffffffffffffff rdx:0x40000000 rsi:0x7fed17a45820 rdi:0x17 rbp:0x7fed17a458a0 rsp:0x7fed172ffe10 r8:0x0 r9:0x1 r10:0x7fed17a458d8 r11:0x246 r12:0x4 r13:0x19 r14:0x7fed17a4b568 r15:0x17 rip:0x70000005 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x3ea fs_base:0x7fed17a4b640 gs_base:0x0 } { real_time:33382.950126 global_time:648452, event:SYSCALLBUF_RESET' tid:268580, ticks:26306401
}
_

CPU information:

Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 48 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 64
On-line CPU(s) list: 0-63
Vendor ID: AuthenticAMD
Model name: AMD Ryzen Threadripper PRO 5975WX 32-Cores
CPU family: 25
Model: 8
Thread(s) per core: 2
Core(s) per socket: 32
Socket(s): 1
Stepping: 2
Frequency boost: enabled
CPU max MHz: 7006.6401
CPU min MHz: 1800.0000

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the intermittent recording failure on the AMD Ryzen Threadripper PRO 5975WX system described in the report. Inspect ReplaySession.cc:1184 and the check_ticks_consistency() failure, comparing the expected and observed tick counts for the futex syscall. Done means identifying and correcting the cause of the mismatch on this Linux setup.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux
Domain
devtools, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.