DynamoRIO / DynamoRIO/dynamorio

calling code for other threads could mess up priv lib state

Open
#1,005 4 comments 0 reactions 0 assignees View on GitHub
Migrated Priority-Low
Dominant language
C
Stars
3.2k
Forks
629
Avg merge
2d 15h
Merged PRs (30d)
31

Description

_From [bruen...@google.com](https://code.google.com/u/109494838902877177630/) on December 04, 2012 16:14:02_

3rd-party lib code could store some data in priv lib tls.
then on thread exit (or possibly on other cases where we invoke code for
other threads, like state translation for synch_with_*) when we invoke the
exit event from another thread, the priv lib code could access the wrong
state when trying to clean up. but, this would only happen if the client
were invoking something that caches data in tls and assumes it will be
called later from the same thread. I have yet to come up with an example
where this might really happen.

a solution is to swap the priv tls on linux, but that's not really feasible
on windows, unless we do a deep mem swap of TEB+PEB.

_Original issue: http://code.google.com/p/dynamorio/issues/detail?id=1005_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.