DR only unlinks when can identify the fragment: else it assumes in DR and
so will see pending flag in dispatch.
one solution is to store the fragment prior to any clean call but we should search for a more performant solution.
(all the code on identifying dstack and looking for ntdll code, etc. is for
native threads for suspend-all)
From bruen...@google.com on April 04, 2012 11:44:07
DR only unlinks when can identify the fragment: else it assumes in DR and so will see pending flag in dispatch. one solution is to store the fragment prior to any clean call but we should search for a more performant solution.
(all the code on identifying dstack and looking for ntdll code, etc. is for native threads for suspend-all)
Original issue: http://code.google.com/p/dynamorio/issues/detail?id=717