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
  • Issues
  • #2486
Closed
Open
Issue created Jun 28, 2017 by Al Grant@algrant-arm

drcachesim gets into permanently non working state, leaves subprocess hanging

Reported on x86 with build from source. When drcachesim is abruptly terminated (e.g. broken out of), it can leave the environment in a state where subsequent runs of drcachesim will always fail, with the messages "failed to read from trace", "ERROR: failed to run analyzer".

Looking at strace, it's doing mknod("/tmp/drcachesimpipe"...) and failing with EEXIST. It does this immediately after clone() and leaves the subprocess still existing and suspended.

This could be broken into several subproblems:

  • the original failure to clean up after abrupt termination
  • the inability to recover from this state when next launched
  • the error messages texts are sketchy and not clearly identified as coming from DR
  • even after deliberate error termination, it leaves the subprocess existing
Assignee
Assign to
Time tracking