Skip to content

UpdatingDR

Derek Bruening edited this page Nov 9, 2018 · 6 revisions

Instructions for updating the DynamoRIO version embedded inside DrMem

DynamoRIO Inside Dr. Memory

DynamoRIO is included inside the Dr. Memory source tree as a git submodule. We support both building that embedded DR along with pointing to an already-built separate DR export tree.

For information on ensuring that submodules are updated properly when pulling, see Workflow.

Updating the DynamoRIO Version

Run git checkout <hash> to update DynamoRIO to that hash:

cd dynamorio
git pull
git checkout 0c81acfc9aaea949e6f6ecfe0b4157c06a014dda

If Dr. Memory's sources are being changed to require this new version of DR, apply the Dr. Memory changes such that they will be included in the same commit that updates the submodule version. Also add to the commit message something like "Relies on DR . Updates DR to .".

If Dr. Memory won't build, or shouldn't be built, with any older version of DR, also update the set of the "DynamoRIO_VERSION_REQUIRED" variable in trunk/CMakeLists.txt (use the patchlevel printed by cmake .).

Now run the Dr. Memory test suite with an embedded DR, not with an already-built DR to ensure it's happy with the updated DR.

In your commit log message state to which version you're updating DR, and why (typically to pull in a certain bug fix or new feature).