Skip to content

Commit 758ad30

Browse files
committed
Re-order syscallbuf unmapping and stashed signal injection
Fixes assertion in rr-debugger#3831. Using AutoRemoteSyscalls is not permitted after the signal injection check, since it could cause additional signals to be stashed.
1 parent 4ce695c commit 758ad30

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

Diff for: src/RecordSession.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -936,7 +936,6 @@ void RecordSession::task_continue(const StepState& step_state) {
936936
}
937937
}
938938
}
939-
t->unmap_dead_syscallbufs_if_required();
940939
t->resume_execution(resume, RESUME_NONBLOCKING, ticks_request);
941940
}
942941

@@ -2709,6 +2708,7 @@ RecordSession::RecordResult RecordSession::record_step() {
27092708
}
27102709

27112710
t->verify_signal_states();
2711+
t->unmap_dead_syscallbufs_if_required();
27122712

27132713
// We try to inject a signal if there's one pending; otherwise we continue
27142714
// task execution.

0 commit comments

Comments
 (0)