Skip to content

5.9.0-4.fc43's debug command hangs on an “rr backtrace” when invoked with discord-canary-openasar-0.0.838-1's DiscordCanary binary as its sole argument. #4036

@RokeJulianLockhart

Description

@RokeJulianLockhart

Reported here, per reddit.com/r/archlinux/comments/sjqi4t/comment/nv2x5yx.

Conducted Preparation

RokeJulianLockhart@Beedell:~$ wget https://github.com/rr-debugger/rr/raw/858a036359520ea9979d4850f4cee567e6d2c8c9/scripts/zen_workaround.py
HTTP response 302  [https://github.com/rr-debugger/rr/raw/858a036359520ea9979d4850f4cee567e6d2c8c9/scripts/zen_workaround.py]
Adding URL: https://raw.githubusercontent.com/rr-debugger/rr/858a036359520ea9979d4850f4cee567e6d2c8c9/scripts/zen_workaround.py
Adding URL: https://raw.githubusercontent.com/rr-debugger/rr/858a036359520ea9979d4850f4cee567e6d2c8c9/scripts/zen_workaround.py
Saving 'zen_workaround.py'
HTTP response 200  [https://raw.githubusercontent.com/rr-debugger/rr/858a036359520ea9979d4850f4cee567e6d2c8c9/scripts/zen_workaround.py]
zen_workaround.py    100% [=========================================================================================================================================================================================================================================================================>]    1.83K    --.-KB/s
                          [Files: 1  Bytes: 1.83K [3.60KB/s] Redirects: 1  Todo: 0  Errors: 0
RokeJulianLockhart@Beedell:~$ chmod +x $HOME/Downloads/zen_workaround.py
RokeJulianLockhart@Beedell:~$ sudo $HOME/Downloads/zen_workaround.py
Zen workaround in place

The Problem

When rr debug, from rr-5.9.0-4.fc43.x86_64.rpm is invoked on /usr/share/discord-canary-openasar/DiscordCanary, from discord-canary-openasar-0.0.838-1.fc43.x86_64.rpm, it hangs, with a crash trace:

RokeJulianLockhart@Beedell:~$ time rr record /usr/share/discord-canary-openasar/DiscordCanary
rr: Saving execution to trace directory `/home/RokeJulianLockhart/.local/share/rr/DiscordCanary-6'.
[FATAL src/record_syscall.cc:6754:rec_process_syscall_arch()] 
 (task 193980 (rec:193980) at time 1948)
 -> Assertion `t->regs().syscall_result_signed() == -syscall_state.expect_errno' failed to hold. Expected EINVAL for 'madvise' but got result 0 (errno SUCCESS); unknown madvise(102)
Tail of trace dump:
{
  real_time:25624.020258 global_time:1928, event:`SYSCALLBUF_RESET' tid:193980, ticks:12176189
}
{
  real_time:25624.020297 global_time:1929, event:`SYSCALLBUF_FLUSH' tid:193980, ticks:12176213
  { syscall:'socketpair', ret:0x0, size:0x18 }
}
{
  real_time:25624.020321 global_time:1930, event:`PATCH_SYSCALL' tid:193980, ticks:12176213
rax:0x30 rbx:0x55e06096b358 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x5 rbp:0x7ffcb4ab6a20 rsp:0x7ffcb4ab69c8 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x0 r15:0xaaaaaaaaaaaaaaaa rip:0x7feb5b1c3269 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xffffffffffffffff fs_base:0x7feb5a464380 gs_base:0x0
  { tid:193980, addr:0x7feb5cb37758, length:0x5e }
  { tid:193980, addr:0x7feb5b1c3269, length:0x8 }
}
{
  real_time:25624.020326 global_time:1931, event:`SYSCALLBUF_RESET' tid:193980, ticks:12176213
}
{
  real_time:25624.020351 global_time:1932, event:`SYSCALL: shutdown' (state:ENTERING_SYSCALL) tid:193980, ticks:12176222
rax:0xffffffffffffffda rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x5 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x0 r15:0xaaaaaaaaaaaaaaaa rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x30 fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020370 global_time:1933, event:`SYSCALL: shutdown' (state:EXITING_SYSCALL) tid:193980, ticks:12176222
rax:0x0 rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x5 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x0 r15:0xaaaaaaaaaaaaaaaa rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x30 fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020394 global_time:1934, event:`SYSCALL: shutdown' (state:ENTERING_SYSCALL) tid:193980, ticks:12176236
rax:0xffffffffffffffda rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x1 rdi:0x6 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x6 r15:0xaaaaaaaaaaaaaaaa rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x30 fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020412 global_time:1935, event:`SYSCALL: shutdown' (state:EXITING_SYSCALL) tid:193980, ticks:12176236
rax:0x0 rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x1 rdi:0x6 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x6 r15:0xaaaaaaaaaaaaaaaa rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x30 fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020456 global_time:1936, event:`PATCH_SYSCALL' tid:193980, ticks:12176241
rax:0x125 rbx:0x55e06096b358 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x7ffcb4ab69f8 rbp:0x7ffcb4ab6a20 rsp:0x7ffcb4ab69c8 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x6 r15:0xaaaaaaaaaaaaaaaa rip:0x7feb5b1b411b eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xffffffffffffffff fs_base:0x7feb5a464380 gs_base:0x0
  { tid:193980, addr:0x7feb5cb377b6, length:0x5e }
  { tid:193980, addr:0x7feb5b1b411b, length:0x8 }
}
{
  real_time:25624.020480 global_time:1937, event:`SYSCALL: pipe2' (state:ENTERING_SYSCALL) tid:193980, ticks:12176251
rax:0xffffffffffffffda rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x7ffcb4ab69f8 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x6 r15:0xaaaaaaaaaaaaaaaa rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x125 fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020505 global_time:1938, event:`SYSCALL: pipe2' (state:EXITING_SYSCALL) tid:193980, ticks:12176251
rax:0x0 rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x0 rdi:0x7ffcb4ab69f8 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x0 r10:0x7ffcb4ab69f0 r11:0x246 r12:0xffffffff r13:0x55e0607102b0 r14:0x6 r15:0xaaaaaaaaaaaaaaaa rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x125 fs_base:0x7feb5a464380 gs_base:0x0
  { tid:193980, addr:0x7ffcb4ab69f8, length:0x8 }
}
{
  real_time:25624.020531 global_time:1939, event:`SYSCALL: rt_sigaction' (state:ENTERING_SYSCALL) tid:193980, ticks:12176377
rax:0xffffffffffffffda rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x7ffcb4ab6530 rdi:0x21 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x7e0000b62e0 r10:0x8 r11:0x246 r12:0xfffffffc00000000 r13:0x1 r14:0x7e0000b62e0 r15:0x2 rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xd fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020551 global_time:1940, event:`SYSCALL: rt_sigaction' (state:EXITING_SYSCALL) tid:193980, ticks:12176377
rax:0x0 rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x7ffcb4ab6530 rdi:0x21 rbp:0x681ffe40 rsp:0x681ffde0 r8:0x0 r9:0x7e0000b62e0 r10:0x8 r11:0x246 r12:0xfffffffc00000000 r13:0x1 r14:0x7e0000b62e0 r15:0x2 rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xd fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020579 global_time:1941, event:`SYSCALL: rt_sigprocmask' (state:ENTERING_SYSCALL) tid:193980, ticks:12176383
rax:0xffffffffffffffda rbx:0x7e000006ca0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x7ffcb4ab66f8 rdi:0x1 rbp:0x7ffcb4ab67c0 rsp:0x7ffcb4ab6680 r8:0x0 r9:0x7e0000b62e0 r10:0x8 r11:0x246 r12:0xfffffffc00000000 r13:0x1 r14:0x7e0000b62e0 r15:0x2 rip:0x7feb5b13ecbf eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xe fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020597 global_time:1942, event:`SYSCALL: rt_sigprocmask' (state:EXITING_SYSCALL) tid:193980, ticks:12176383
rax:0x0 rbx:0x7e000006ca0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x7ffcb4ab66f8 rdi:0x1 rbp:0x7ffcb4ab67c0 rsp:0x7ffcb4ab6680 r8:0x0 r9:0x7e0000b62e0 r10:0x8 r11:0x246 r12:0xfffffffc00000000 r13:0x1 r14:0x7e0000b62e0 r15:0x2 rip:0x7feb5b13ecbf eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xe fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020610 global_time:1943, event:`PATCH_SYSCALL' tid:193980, ticks:12176383
rax:0x0 rbx:0x7e000006ca0 rcx:0xffffffffffffffff rdx:0x0 rsi:0x7ffcb4ab66f8 rdi:0x1 rbp:0x7ffcb4ab67c0 rsp:0x7ffcb4ab6680 r8:0x0 r9:0x7e0000b62e0 r10:0x8 r11:0x246 r12:0xfffffffc00000000 r13:0x1 r14:0x7e0000b62e0 r15:0x2 rip:0x7feb5b13ecbf eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xe fs_base:0x7feb5a464380 gs_base:0x0
  { tid:193980, addr:0x7feb5cb37814, length:0x5e }
  { tid:193980, addr:0x7feb5b13ecb8, length:0x7 }
}
{
  real_time:25624.020635 global_time:1944, event:`SYSCALL: mmap' (state:ENTERING_SYSCALL) tid:193980, ticks:12176410
rax:0xffffffffffffffda rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x3 rsi:0x801000 rdi:0x0 rbp:0x681ffe40 rsp:0x681ffde0 r8:0xffffffff r9:0x0 r10:0x20022 r11:0x246 r12:0x20022 r13:0x0 r14:0xffffffffffffffc0 r15:0x7feb5cbc0000 rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x9 fs_base:0x7feb5a464380 gs_base:0x0
}
{
  real_time:25624.020662 global_time:1945, event:`SYSCALL: mmap' (state:EXITING_SYSCALL) tid:193980, ticks:12176410
rax:0x7feb4abff000 rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x3 rsi:0x801000 rdi:0x0 rbp:0x681ffe40 rsp:0x681ffde0 r8:0xffffffff r9:0x0 r10:0x20022 r11:0x246 r12:0x20022 r13:0x0 r14:0xffffffffffffffc0 r15:0x7feb5cbc0000 rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x9 fs_base:0x7feb5a464380 gs_base:0x0
  { map_file:"<ZERO>", addr:0x7feb4abff000, length:0x801000, prot_flags:"rw-p", file_offset:0x0, device:0, inode:0, data_file:"", data_offset:0x0, file_size:0x801000 }
}
{
  real_time:25624.020707 global_time:1946, event:`PATCH_SYSCALL' tid:193980, ticks:12176419
rax:0x1c rbx:0x7feb4b3ff6c0 rcx:0xffffffffffffffff rdx:0x66 rsi:0x1000 rdi:0x7feb4abff000 rbp:0x7ffcb4ab67c0 rsp:0x7ffcb4ab6678 r8:0xffffffff r9:0x0 r10:0x801000 r11:0x246 r12:0x7ffcb4ab6920 r13:0x0 r14:0xffffffffffffffc0 r15:0x7feb5cbc0000 rip:0x7feb5b1bd649 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0xffffffffffffffff fs_base:0x7feb5a464380 gs_base:0x0
  { tid:193980, addr:0x7feb5cb37872, length:0x5e }
  { tid:193980, addr:0x7feb5b1bd649, length:0x8 }
}
{
  real_time:25624.020732 global_time:1947, event:`SYSCALL: madvise' (state:ENTERING_SYSCALL) tid:193980, ticks:12176431
rax:0xffffffffffffffda rbx:0x681fffa0 rcx:0xffffffffffffffff rdx:0x66 rsi:0x1000 rdi:0x7feb4abff000 rbp:0x681ffe40 rsp:0x681ffde0 r8:0xffffffff r9:0x0 r10:0x801000 r11:0x246 r12:0x7ffcb4ab6920 r13:0x0 r14:0xffffffffffffffc0 r15:0x7feb5cbc0000 rip:0x70000002 eflags:0x246 cs:0x33 ss:0x2b ds:0x0 es:0x0 fs:0x0 gs:0x0 orig_rax:0x1c fs_base:0x7feb5a464380 gs_base:0x0
}
=== Start rr backtrace:
rr(_ZN2rr13dump_rr_stackERNS_8ScopedFdE+0x5b) [0x55b623601d3b]
rr(_ZN2rr15emergency_debugEPNS_4TaskE+0x1b5) [0x55b6234c1325]
rr(+0xc3b25) [0x55b6234c1b25]
rr(+0xc4c27) [0x55b6234c2c27]
rr(+0xc4c64) [0x55b6234c2c64]
rr(+0x12de3f) [0x55b62352be3f]
rr(_ZN2rr19rec_process_syscallEPNS_10RecordTaskE+0x1a5) [0x55b623518495]
rr(_ZN2rr13RecordSession21syscall_state_changedEPNS_10RecordTaskEPNS0_9StepStateE+0x9f8) [0x55b6234fcf98]
rr(_ZN2rr13RecordSession11record_stepEv+0x619) [0x55b623500aa9]
rr(_ZN2rr13RecordCommand3runERSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS7_EE+0x1021) [0x55b6234f2cc1]
rr(main+0x1ba) [0x55b62342708a]
/lib64/libc.so.6(+0x35b5) [0x7fcd1fbe45b5]
/lib64/libc.so.6(__libc_start_main+0x88) [0x7fcd1fbe4668]
rr(_start+0x25) [0x55b623428665]
=== End rr backtrace
Launch debugger with
  'gdb' '-l' '10000' '-ex' 'set sysroot /' '-ex' 'target extended-remote 127.0.0.1:62908' '/usr/share/discord-canary-openasar/DiscordCanary' 
^C


real    252m29.853s
user    0m0.159s
sys     0m0.368s

My Environment

  1. #!/usr/bin/env sh
    rpm -qi \
     $(rpm -qf $(command -v rr)) \
     $(rpm -qf /usr/share/discord-canary-openasar/DiscordCanary)
    • Name        : rr
      Version     : 5.9.0
      Release     : 4.fc43
      Architecture: x86_64
      Install Date: Sat 20 Dec 2025 13:01:56 GMT
      Size        : 4383412
      Signature   :
                    RSA/SHA256, Tue 12 Aug 2025 01:07:38 BST, Key ID 829b606631645531
      Source RPM  : rr-5.9.0-4.fc43.src.rpm
      Build Date  : Tue 12 Aug 2025 01:00:24 BST
      Build Host  : buildvm-x86-16.rdu3.fedoraproject.org
      Packager    : Fedora Project
      Vendor      : Fedora Project
      URL         : http://rr-project.org
      Bug URL     : https://bugz.fedoraproject.org/rr
    • Name        : discord-canary-openasar
      Version     : 0.0.838
      Release     : 1.fc43
      Architecture: x86_64
      Install Date: Sat 20 Dec 2025 12:27:48 GMT
      Size        : 269104501
      Signature   :
                    EdDSA/SHA256, Sat 20 Dec 2025 01:50:31 GMT, Key ID e43dbfe05c4f92a3
                    EdDSA/SHA256, Sat 20 Dec 2025 01:50:31 GMT, Key ID e43dbfe05c4f92a3
      Source RPM  : discord-canary-openasar-0.0.838-1.fc43.src.rpm
      Build Date  : Sat 20 Dec 2025 01:48:20 GMT
      Build Host  : 2a229bc7c1f5
      Vendor      : Terra
      URL         : https://github.com/GooseMod/OpenAsar

Context

I was attempting to debug GooseMod/OpenAsar/issues/224.

Footnotes

  1. wiki/Zen/dc95d082f67751c4c8221c1d9517905ca8913c1e#wiki-body

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions