DynamoRIO / DynamoRIO/dynamorio
HANG ripgrep statically linked with musl hangs when run under DR
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 31
Description
**Describe the bug**
Running ripgrep (rg) statically linked with musl under DR results in an application hang.
**To Reproduce**
On Ubuntu 24 Graviton 4:
curl --location --remote-name https://github.com/BurntSushi/ripgrep/releases/download/15.2.0/ripgrep-15.2.0-aarch64-unknown-linux-musl.tar.gz
tar -xf ripgrep-15.2.0-aarch64-unknown-linux-musl.tar.gz
sudo install -m 0755 ripgrep-15.2.0-aarch64-unknown-linux-musl/rg /usr/local/bin/rg
drrun rg "text pattern"
- What happens when you run without any client?
I am not using a client.
- What happens when you run with debug build ("-debug" flag to drrun/drconfig/drinject)?
The behaviour is the same with a release or debug build.
The call stack is not useful:
(gdb) bt
#0 0x00000000489d9d08 in ?? ()
#1 0x0000fffdf6cff0f0 in ?? ()
Backtrace stopped: not enough registers or memory available to unwind further
**Expected behavior**
I expect ripgrep to finish running as normal.
**Versions**
- What version of DynamoRIO are you using?
Build of latest code.
- Does the latest build from https://github.com/DynamoRIO/dynamorio/releases solve the problem?
I get the same behaviour with cronbuild-11.91.20658/DynamoRIO-AArch64-Linux-11.91.20658.tar.gz
- What operating system version are you running on?
Ubuntu 24 on Graviton 4
- Is your application 32-bit or 64-bit?
64 bit
Contributor guide
Research direction
Start by reproducing the hang with drrun and the provided statically linked musl ripgrep binary on Ubuntu 24/AArch64. The report provides no source file or test entry point, and the unusable backtrace is an investigation constraint. Done means identifying and fixing the DynamoRIO behavior so ripgrep completes normally under drrun.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, linux, ubuntu
- Domain
- devtools, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100