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
  • !4046

i#4038: Mark exit cti padding and remove it when trace building

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Derek Bruening requested to merge i4038-nop-pads-in-traces into master Jan 22, 2020
  • Overview 2
  • Commits 2
  • Pipelines 0
  • Changes 13

Adds new flags LINK_PADDED and INSTR_BRANCH_PADDED and uses them to mark exit cti padding added for safe patching. Reads the link flag in decode_fragment() to remove the padding during trace building. This avoids prior trace barriers from extra basic block exits from inlined syscall exits, rseq mangling, and client changes.

Removes the option and stats around -pad_jmps_mark_no_trace which is no longer needed.

Tested on the linux.rseq test which now successfully traces through the rseq mangling.

Fixes #4038 (closed)

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: i4038-nop-pads-in-traces