Test string_instructions-32-no-syscallbuf failing on fedora 21 ("Assertion `(pending_sig() == SIGTRAP || ReplaySession::is_ignored_signal(pending_sig()))' failed to hold. PENDING SIG IS SIGSTKFLT")
Open
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.7k
- Forks
- 662
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 2
Description
Seeing the following gdb interaction
(gdb) break string_store
break string_store
Breakpoint 1 at 0x8048841: file /home/cjones/rr/obj/32/string_instructions.c, line 36.
c
(gdb) c
Continuing.
Breakpoint 1, string_store (dest=0x55995008 "", a=1633771873, size=10485760, unit=1, dir=1) at /home/cjones/rr/obj/32/string_instructions.c:36
36 set_dir(dir);
finish
watch -l p[1000000]
(gdb) finish
Run till exit from #0 string_store (dest=0x55995008 "", a=1633771873, size=10485760, unit=1, dir=1) at /home/cjones/rr/obj/32/string_instructions.c:36
0x08048c51 in main (argc=1, argv=0xffffd5c4) at /home/cjones/rr/obj/32/string_instructions.c:254
254 string_store(p, pattern, size_units, unit, dir);
(gdb) watch -l p[1000000]
Hardware watchpoint 2: -location p[1000000]reverse-continue
(gdb) reverse-continue
Continuing.
[FATAL /home/cjones/rr/rr/src/task.cc:353:finish_emulated_syscall() errno: 0 'Success']
(task 31530 (rec:31475) at time 294)
-> Assertion `(pending_sig() == SIGTRAP || ReplaySession::is_ignored_signal(pending_sig()))' failed to hold. PENDING SIG IS SIGSTKFLT
Seeing if I can repro.
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
Reproduce string_instructions-32-no-syscallbuf on Fedora 21 using the reported GDB reverse-continue interaction. Start at rr/src/task.cc:353 in finish_emulated_syscall() and trace why SIGSTKFLT remains pending; done means the failing test no longer aborts and the signal behavior is covered by an appropriate regression test.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- devtools, operating-systems, reverse-engineering
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100