Assertion `child_sig_gt_zero' failed to hold. Replaying `SCHED': expecting tracee signal or trap, but instead at `ioctl' (ticks: 55628)
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.7k
- Forks
- 662
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 2
Description
I'm trying to enable -fPIC for librrpreload, since x86-64 is unhappy about having to link relocations related to __thread in non-PIC code. As a start, I was trying to make sure that -fPIC works for 32-bit mode, but I get several test failures:
async_signal_syscalls_100async_signal_syscalls_1000checkpoint_async_signal_syscalls_1000deliver_async_signal_during_syscallssyscallbuf_timeslice_250
In attempting to debug syscallbuf_timeslice_250, I hit the assertion which is the title of this issue. What can I do to figure out what's going wrong? The recorded trace doesn't have any ioctl syscalls whatsoever in it.
The dump has a SCHED event at ticks:55606, an intervening SYSCALLBUF_RESET event, and then a SCHED event at ticks:55928. Is it possible that the ioctl from fiddling with the syscallbuf is the system call we're seeing in the replay, and that somehow didn't happen in the record, or that it got recorded incorrectly?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the listed async-signal and syscallbuf tests in 32-bit mode, especially syscallbuf_timeslice_250, and inspect the replay around the SCHED events at ticks 55606 and 55928. Compare the recorded events across the intervening SYSCALLBUF_RESET and the reported ioctl assertion; done means identifying the record/replay discrepancy and making the affected tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- operating-systems, reverse-engineering
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100