Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • D dynamorio
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,467
    • Issues 1,467
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 44
    • Merge requests 44
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • DynamoRIO
  • dynamorio
  • Merge requests
  • !5664

i#5658 rseq drreg: Put native sequence by barrier

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Derek Bruening requested to merge i5658-fix-rseq-barrier into master Sep 30, 2022
  • Overview 3
  • Commits 2
  • Pipelines 0
  • Changes 2

Fixes PR #5663 which fixed drreg restoration for drbbdup but broke it for non-drbbdup. bb->instr was NULL so the preinsert was an append, and the label as the last instruction moved the drreg restore point to after the native sequence!

Here, we explicitly append to avoid confusion, and we move the native sequence to the point of the barrier instead of at the final app instr, which is where the registers are actually native.

Tested on larger apps using rseq which reliably crashed without this fix. This fix also seems to fully fix drbbdup usage with drmemtrace for #2039 (closed).

Issue: #5658, #2039 (closed)

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: i5658-fix-rseq-barrier