-
Notifications
You must be signed in to change notification settings - Fork 573
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
i#2350 rseq: run restartable sequences natively (#2396)
Adds preliminary handling for restartable sequences in Linux, a kernel feature meant for per-cpu critical regions. The code here targets a particular Linux kernel patch, but tries to be general to make it easy to tweak for other flavors. Adds a new option -rseq_sysnum to enable this support and to specify the syscall number for the kernel extension. For initial handling, we execute the restartable sequence natively. It is very complex to build regular blocks and support instrumentation, so we start with native execution to at least allow correct app execution even if tools miss some code. We assume each sub-sequence is entered via a call and exited via a return, and we use our existing native_exec gateway and resumption mechanisms.
- Loading branch information
1 parent
5a209f9
commit cda88be
Showing
6 changed files
with
161 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters