History log of /llvm-project-15.0.7/compiler-rt/lib/lsan/lsan_common.cpp (Results 1 – 25 of 41)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init
# b15cf06f 15-Jul-2022 Leonard Grey <[email protected]>

[lsan][nfc] Add missing newline to VReport


Revision tags: llvmorg-14.0.6, llvmorg-14.0.5
# e06a81d8 31-May-2022 Andrew Ng <[email protected]>

[LSAN] Fix up LSAN weak symbols for Windows

Differential Revision: https://reviews.llvm.org/D126703


Revision tags: llvmorg-14.0.4
# 8246b2e1 23-May-2022 Mariusz Borsa <[email protected]>

[Sanitizers][Darwin] Replace SANITIZER_MAC with SANITIZER_APPLE in source files

This is a follow up to [Sanitizers][Darwin] Rename Apple macro SANITIZER_MAC -> SANITIZER_APPLE (D125816)

Performed a

[Sanitizers][Darwin] Replace SANITIZER_MAC with SANITIZER_APPLE in source files

This is a follow up to [Sanitizers][Darwin] Rename Apple macro SANITIZER_MAC -> SANITIZER_APPLE (D125816)

Performed a global search/replace as in title against LLVM sources

Differential Revision: https://reviews.llvm.org/D126263

show more ...


# c8644ea8 24-May-2022 Leonard Chan <[email protected]>

[compiler-rt][lsan] Update CanBeAHeapPointer for AArch64

While attempting to get the 64-bit lsan allocator working for Fuchsia, I
noticed this function would incorrectly return false for pointers re

[compiler-rt][lsan] Update CanBeAHeapPointer for AArch64

While attempting to get the 64-bit lsan allocator working for Fuchsia, I
noticed this function would incorrectly return false for pointers returned
by the 64-bit allocator. On AArch64, this function attempts to get the VMA
size dynamically by counting the number of leading zeros from the function
frame address. This will fail if the frame address is significantly below an
allocated pointer (that is, the frame address has more leading zeros than an
allocated pointer). This is possible on Fuchsia and linux (when not called
from the initial thread stack).

It seems the intended use of this function is to speed up pointer scanning by
filtering out addresses that user code might not be able to access. Other
platforms this check is done on seem to hardcode the VMA size/shift, so it
seems appropriate to do this for aarch64 as well. This implies pointers on
aarch64 where the VMA size is <64 will pass through, but bad pointers will
still be caught by subsequent scan checks.

This patch also renames the function to something more fitting of what it's
trying to do.

Differential Revision: https://reviews.llvm.org/D123814

show more ...


Revision tags: llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1
# a63932a8 15-Mar-2022 Vitaly Buka <[email protected]>

[lsan] Allow suppression of "unknown module"

If sanitizer cannot determine name of the module it
will use "<unknown module>". Then it can be suppressed
if needed.

Reviewed By: kda

Differential Rev

[lsan] Allow suppression of "unknown module"

If sanitizer cannot determine name of the module it
will use "<unknown module>". Then it can be suppressed
if needed.

Reviewed By: kda

Differential Revision: https://reviews.llvm.org/D121674

show more ...


Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2
# f86deb18 09-Dec-2021 Vitaly Buka <[email protected]>

[lsan] Move out suppression of invalid PCs from StopTheWorld

This removes the last use of StackDepot from StopTheWorld.

Depends on D115284.

Reviewed By: morehouse

Differential Revision: https://r

[lsan] Move out suppression of invalid PCs from StopTheWorld

This removes the last use of StackDepot from StopTheWorld.

Depends on D115284.

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D115319

show more ...


# f72e5094 08-Dec-2021 Vitaly Buka <[email protected]>

[lsan] Reduce StopTheWorld access to StackDepot

StackDepot locks some stuff. As is there is small probability to
deadlock if we stop thread which locked the Depot.

We need either Lock/Unlock StackD

[lsan] Reduce StopTheWorld access to StackDepot

StackDepot locks some stuff. As is there is small probability to
deadlock if we stop thread which locked the Depot.

We need either Lock/Unlock StackDepot for StopTheWorld, or don't
interact with StackDepot from there.

This patch does not run LeakReport under StopTheWorld. LeakReport
contains most of StackDepot access.

As a bonus this patch will help to resolve kMaxLeaksConsidered FIXME.

Depends on D114498.

Reviewed By: morehouse, kstoimenov

Differential Revision: https://reviews.llvm.org/D115284

show more ...


# a9a14990 08-Dec-2021 Vitaly Buka <[email protected]>

[NFC][lsan] Change LeakSuppressionContext interface

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D115318


# b1c369e0 08-Dec-2021 Vitaly Buka <[email protected]>

[lsan] Replace atomic_store/atomic_load with atomic_fetch_add


# dd1abb11 08-Dec-2021 Vitaly Buka <[email protected]>

[NFC][lsan] Move method implementation up


# b79ea567 08-Dec-2021 Vitaly Buka <[email protected]>

[NFC][lsan] Clang-format lsan_common.cpp


# 8ed4d281 08-Dec-2021 Vitaly Buka <[email protected]>

[NFC][lsan] Use kIgnored in MarkInvalidPCCb

kIgnored didn't exist when the code was added, but it should be
equivalent to kReachable.
The goal is to refactor MarkInvalidPCCb to avoid StackDepotGet
i

[NFC][lsan] Use kIgnored in MarkInvalidPCCb

kIgnored didn't exist when the code was added, but it should be
equivalent to kReachable.
The goal is to refactor MarkInvalidPCCb to avoid StackDepotGet
in StopTheWorld.

show more ...


Revision tags: llvmorg-13.0.1-rc1
# 64d44208 12-Nov-2021 Vitaly Buka <[email protected]>

[NFC][lsan] Simplify root_regions initialization


# 629b40da 03-Nov-2021 Martin Liska <[email protected]>

Fix -Wformat warnings reported by GCC.

Differential Revision: https://reviews.llvm.org/D113099


# ca0036df 12-Oct-2021 Vitaly Buka <[email protected]>

[sanitizer] Remove StackDepotReverseMap

Now StackDepotGet can retrive the stack in O(1).

Depends on D111612.

Reviewed By: dvyukov

Differential Revision: https://reviews.llvm.org/D111613


# 051d766b 01-Oct-2021 Vitaly Buka <[email protected]>

[NFC][lsan] Expand use StackDepotReverseMap

Before StackDepotReverseMap was used only by ProcessPC.


Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1
# 56debbf5 28-Jul-2021 Dmitry Vyukov <[email protected]>

sanitizers: switch BlockingMutex(LINKER_INITIALIZED) to Mutex

Mutex does not support LINKER_INITIALIZED support.
As preparation to switching BlockingMutex to Mutex,
proactively replace all BlockingM

sanitizers: switch BlockingMutex(LINKER_INITIALIZED) to Mutex

Mutex does not support LINKER_INITIALIZED support.
As preparation to switching BlockingMutex to Mutex,
proactively replace all BlockingMutex(LINKER_INITIALIZED) to Mutex.
All of these are objects with static storage duration and Mutex ctor
is constexpr, so it should be equivalent.

Reviewed By: melver

Differential Revision: https://reviews.llvm.org/D106944

show more ...


Revision tags: llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4
# e0dadf3d 16-Mar-2021 Vitaly Buka <[email protected]>

[sanitizer] Remove max_len parameter from InternalScopedString

InternalScopedString uses InternalMmapVector internally
so it can be resized dynamically as needed.

Reviewed By: eugenis

Differential

[sanitizer] Remove max_len parameter from InternalScopedString

InternalScopedString uses InternalMmapVector internally
so it can be resized dynamically as needed.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D98751

show more ...


Revision tags: llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init
# dd922bc2 21-Jan-2021 Dan Liew <[email protected]>

[LSan] Introduce a callback mechanism to allow adding data reachable from ThreadContexts to the frontier.

This mechanism is intended to provide a way to treat the `arg` pointer
of a created (but not

[LSan] Introduce a callback mechanism to allow adding data reachable from ThreadContexts to the frontier.

This mechanism is intended to provide a way to treat the `arg` pointer
of a created (but not yet started) thread as reachable. In future
patches this will be implemented in `GetAdditionalThreadContextPtrs`.

A separate implementation of `GetAdditionalThreadContextPtrs` exists
for ASan and LSan runtimes because they need to be implemented
differently in future patches.

rdar://problem/63537240

Differential Revision: https://reviews.llvm.org/D95183

show more ...


Revision tags: llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1
# 9a023701 29-Dec-2020 Vitaly Buka <[email protected]>

[lsan] Ignore inderect leaks referenced by suppressed blocks

This makes suppression list to work similar to __lsan_ignore_object.

Existing behavior was inconsistent and very inconvenient for comple

[lsan] Ignore inderect leaks referenced by suppressed blocks

This makes suppression list to work similar to __lsan_ignore_object.

Existing behavior was inconsistent and very inconvenient for complex
data structures.

Example:

struct B;
struct A { B* ptr; };
A* t = makeA();
t->ptr = makeB();

Before the patch: if makeA suppressed by suppression file, lsan will
still report the makeB() leak, so we need two suppressions.

After the patch: a single makeA suppression is enough (the same as a
single __lsan_ignore_object(t)).

Differential Revision: https://reviews.llvm.org/D93884

show more ...


# 9b25b806 30-Dec-2020 Vitaly Buka <[email protected]>

[NFC][lsan] Extract PrintResults function


# 9a5261ef 30-Dec-2020 Vitaly Buka <[email protected]>

[lsan] Parse suppressions just before leak reporting

Without leaks suppressions are not needed.


# 4e74480e 29-Dec-2020 Vitaly Buka <[email protected]>

[NFC][sanitizer] Simplify InternalLowerBound


Revision tags: llvmorg-11.0.1, llvmorg-11.0.1-rc2
# adfefa55 01-Dec-2020 Vitaly Buka <[email protected]>

[NFC] Extract ForEachDVT


Revision tags: llvmorg-11.0.1-rc1
# 6c164d60 05-Nov-2020 Vitaly Buka <[email protected]>

[NFC] Extract InitializePlatformCommonFlags

And move some Android specifi declarations from headers

Differential Revision: https://reviews.llvm.org/D90811


12