This is an archive of the discontinued LLVM Phabricator instance.

Introduce `UnIgnoreObjectLocked` functions
AbandonedPublic

Authored by delcypher on Jan 6 2021, 5:39 PM.

Details

Summary

This patch adds implementations for LSan & ASan of new
UnIgnoreObjectLocked functions. These functions perform the inverse
of the existing IgnoreObjectLocked functions.

These new functions will be used in a later patch to temporarily ignore
a heap object and then unignore it.

rdar://problem/63537240

Diff Detail

Event Timeline

delcypher requested review of this revision.Jan 6 2021, 5:39 PM
delcypher created this revision.
Herald added a project: Restricted Project. · View Herald TranscriptJan 6 2021, 5:39 PM
Herald added a subscriber: Restricted Project. · View Herald Transcript
vitalybuka added inline comments.Jan 6 2021, 6:20 PM
compiler-rt/lib/lsan/lsan_common.h
245

maybe we need __lsan_unignore_object for consistency and a test

delcypher added inline comments.Jan 7 2021, 10:29 AM
compiler-rt/lib/lsan/lsan_common.h
245

Thanks. I considered this but IIRC we have a very conservative policy of changing the public interface of the sanitizers so I decided to not add a public interface.

I'm not against adding a public interface + a test though but because the end goal is https://reviews.llvm.org/D94210 and it looks like we may have to implement it differently I'll leave this patch as is for now until we know if using UnIgnoreObjectLocked() is the right approach.

vitalybuka accepted this revision.Jan 7 2021, 4:49 PM

Still please do not submit if D94210 does not need it.

This revision is now accepted and ready to land.Jan 7 2021, 4:49 PM
delcypher abandoned this revision.Jan 21 2021, 4:05 PM

This change isn't needed anymore.