History log of /llvm-project/compiler-rt/lib/asan/asan_rtl.cpp (Results 1 – 25 of 64)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: 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
# a0bb2e21 18-Sep-2024 Vitaly Buka <vitalybuka@google.com>

[NFC][sanitizer] Move `InitTlsSize` into `InitializePlatformEarly` (#108921)


Revision tags: llvmorg-19.1.0
# f13b7d0b 16-Sep-2024 Vitaly Buka <vitalybuka@google.com>

Reland "[sanitizer] Fix partially initialized static TLS range" (#108883)

Reland llvm/llvm-project#108685

Arguments order was wrong on Windows and Darwin.


# 9a1d0744 16-Sep-2024 Vitaly Buka <vitalybuka@google.com>

Revert "[sanitizer] Fix partially initialized static TLS range" (#108881)

Reverts llvm/llvm-project#108685

Breaks Darwin and Windows
https://lab.llvm.org/buildbot/#/builders/107/builds/2930
htt

Revert "[sanitizer] Fix partially initialized static TLS range" (#108881)

Reverts llvm/llvm-project#108685

Breaks Darwin and Windows
https://lab.llvm.org/buildbot/#/builders/107/builds/2930
https://ci.swift.org/view/all/job/llvm.org/view/LLDB/job/as-lldb-cmake/11684/

show more ...


# b7c9ebe4 16-Sep-2024 Vitaly Buka <vitalybuka@google.com>

[sanitizer] Fix partially initialized static TLS range (#108685)

Fixes asan, msan crash on check added in #108684.
The #108684 includes reproducer of the issue.

Change interface of `GetThreadSta

[sanitizer] Fix partially initialized static TLS range (#108685)

Fixes asan, msan crash on check added in #108684.
The #108684 includes reproducer of the issue.

Change interface of `GetThreadStackAndTls` to
set `tls_begin` and `tls_end` at the same time.

show more ...


Revision tags: llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init
# 870eee46 12-Jul-2024 Vitaly Buka <vitalybuka@google.com>

[NFC][asan] Use %p to print addresses (#98575)

Co-authored-by: vporpo <vporpodas@google.com>


Revision tags: 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
# 8443ce56 17-Feb-2024 Fangrui Song <i@maskray.me>

[sanitizer] Lift AsanDoesNotSupportStaticLinkage to sanitizer_common.h. NFC (#80948)

The `_DYNAMIC` reference from `AsanDoesNotSupportStaticLinkage` ensures
that `clang++ -fsanitize=address -static

[sanitizer] Lift AsanDoesNotSupportStaticLinkage to sanitizer_common.h. NFC (#80948)

The `_DYNAMIC` reference from `AsanDoesNotSupportStaticLinkage` ensures
that `clang++ -fsanitize=address -static` gets a linker error.
`MemprofDoesNotSupportStaticLinkage` is similar for `-fmemory-profile`.
Move the functions to sanitizer_common.h to be used by more sanitizers
on ELF platforms.

Fuchsia does not use interposition and opts out the check (its
`AsanDoesNotSupportStaticLinkage` is a no-op).

show more ...


Revision tags: llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init
# e065841c 13-Dec-2023 Vitaly Buka <vitalybuka@google.com>

[asan] Install `pthread_atfork` (#75290)

This prevents deadlocks in forked process
if parent had more then one running threads.


# 9567b33f 12-Dec-2023 Vitaly Buka <vitalybuka@google.com>

[asan] Switch initialization to "double-checked locking"

This allows to remove `asan_init_is_running` which likely had a data
race.

Simplifies https://github.com/llvm/llvm-project/pull/74086 and re

[asan] Switch initialization to "double-checked locking"

This allows to remove `asan_init_is_running` which likely had a data
race.

Simplifies https://github.com/llvm/llvm-project/pull/74086 and reduces a difference between platforms.

Reviewers: zacklj89, eugenis, dvyukov

Reviewed By: zacklj89, dvyukov

Pull Request: https://github.com/llvm/llvm-project/pull/74387

show more ...


# 3d718d0e 04-Dec-2023 Vitaly Buka <vitalybuka@google.com>

[NFC][asan] Remove SetAsanInited parameter


# 5aa2f8c9 04-Dec-2023 Vitaly Buka <vitalybuka@google.com>

[NFC][ASAN] Replace AsanInitIsRunning with TryAsanInitFromRtl



Reviewers: zacklj89

Reviewed By: zacklj89

Pull Request: https://github.com/llvm/llvm-project/pull/74171


# e893f695 04-Dec-2023 Vitaly Buka <vitalybuka@google.com>

[NFC][ASAN] Move ENSURE_ASAN_INITED into AsanInitFromRtl (#74170)


# 1ffd77db 02-Dec-2023 Vitaly Buka <vitalybuka@google.com>

[NFC][ASAN] Declare few functions as static


Revision tags: llvmorg-17.0.6, llvmorg-17.0.5
# 5d6304f0 09-Nov-2023 Zachary Johnson <zajohnson@microsoft.com>

[NFC][asan] Change asan_init and asan_init_is_running; add setters/getters

For #71833


# 08771c4e 09-Nov-2023 Zachary Johnson <zajohnson@microsoft.com>

[ASan] Clang-format for #71833


Revision tags: 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
# bda0a93a 21-Jun-2023 Vitaly Buka <vitalybuka@google.com>

Revert "[test][sanitizer] Precommit huge malloc test"

Wrong accidental commit.

This reverts commit 1f18c9624b44e763a76742634f0f95432ea7cb23.


# 1f18c962 21-Jun-2023 Vitaly Buka <vitalybuka@google.com>

[test][sanitizer] Precommit huge malloc test


Revision tags: 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
# 0c35b616 18-Oct-2022 Roy Sundahl <rsundahl@apple.com>

[ASAN] Don't inline when -asan-max-inline-poisoning-size=0

When -asan-max-inline-poisoning-size=0, all shadow memory access should be
outlined (through asan calls). This was not occuring when partia

[ASAN] Don't inline when -asan-max-inline-poisoning-size=0

When -asan-max-inline-poisoning-size=0, all shadow memory access should be
outlined (through asan calls). This was not occuring when partial poisoning
was required on the right side of a variable's redzone. This diff contains
the changes necessary to implement and utilize __asan_set_shadow_01() through
__asan_set_shadow_07(). The change is necessary for the full abstraction of
the asan implementation and will enable experimentation with alternate strategies.

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

show more ...


Revision tags: llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3
# 03e345b5 09-Aug-2022 Vitaly Buka <vitalybuka@google.com>

[asan] Avoid few branches on memcpy hot path


Revision tags: llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init
# ca50840b 01-Jul-2022 Julian Lettner <julian.lettner@apple.com>

[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage

While investigating another issue, I noticed that `MaybeReexec()` never
actually "re-executes via `execv()`" anymore. `DyldNeedsEnvVaria

[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage

While investigating another issue, I noticed that `MaybeReexec()` never
actually "re-executes via `execv()`" anymore. `DyldNeedsEnvVariable()`
only returned true on macOS 10.10 and below.

Usually, I try to avoid "unnecessary" cleanups (it's hard to be certain
that there truly is no fallout), but I decided to do this one because:

* I initially tricked myself into thinking that `MaybeReexec()` was
relevant to my original investigation (instead of being dead code).
* The deleted code itself is quite complicated.
* Over time a few other things were mushed into `MaybeReexec()`:
initializing `MonotonicNanoTime()`, verifying interceptors are
working, and stripping the `DYLD_INSERT_LIBRARIES` env var to avoid
problems when forking.
* This platform-specific thing leaked into `sanitizer_common.h`.
* The `ReexecDisabled()` config nob relies on the "strong overrides weak
pattern", which is now problematic and can be completely removed.
* `ReexecDisabled()` actually hid another issue with interceptors not
working in unit tests. I added an explicit `verify_interceptors`
(defaults to `true`) option instead.

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

show more ...


# 7789c9af 08-Jul-2022 Julian Lettner <julian.lettner@apple.com>

Revert "[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage"

Many tests for the `UBSan-Standalone-iossim-x86_64` fail with this.
Reverting so I can investigate.

This reverts commit 0a9667b

Revert "[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage"

Many tests for the `UBSan-Standalone-iossim-x86_64` fail with this.
Reverting so I can investigate.

This reverts commit 0a9667b0f56b1b450abd02f74c6175bea54f832e.

show more ...


# 0a9667b0 01-Jul-2022 Julian Lettner <julian.lettner@apple.com>

[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage

While investigating another issue, I noticed that `MaybeReexec()` never
actually "re-executes via `execv()`" anymore. `DyldNeedsEnvVaria

[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage

While investigating another issue, I noticed that `MaybeReexec()` never
actually "re-executes via `execv()`" anymore. `DyldNeedsEnvVariable()`
only returned true on macOS 10.10 and below.

Usually, I try to avoid "unnecessary" cleanups (it's hard to be certain
that there truly is no fallout), but I decided to do this one because:

* I initially tricked myself into thinking that `MaybeReexec()` was
relevant to my original investigation (instead of being dead code).
* The deleted code itself is quite complicated.
* Over time a few other things were mushed into `MaybeReexec()`:
initializing `MonotonicNanoTime()`, verifying interceptors are
working, and stripping the `DYLD_INSERT_LIBRARIES` env var to avoid
problems when forking.
* This platform-specific thing leaked into `sanitizer_common.h`.
* The `ReexecDisabled()` config nob relies on the "strong overrides weak
pattern", which is now problematic and can be completely removed.
* `ReexecDisabled()` actually hid another issue with interceptors not
working in unit tests. I added an explicit `verify_interceptors`
(defaults to `true`) option instead.

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

show more ...


Revision tags: llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4
# ec563c5a 20-May-2022 Julian Lettner <julian.lettner@apple.com>

[ASan] Add sleep_before_init flag

Also do a little bit of refactoring instead of just copy&paste.

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


Revision tags: llvmorg-14.0.3, llvmorg-14.0.2
# 64c929ec 18-Apr-2022 Kirill Stoimenov <kstoimenov@google.com>

[ASan] Fixed a reporting bug in (load|store)N functions which would print unknown-crash instead of the proper error message when a the data access is unaligned.

Reviewed By: kda, eugenis

Differenti

[ASan] Fixed a reporting bug in (load|store)N functions which would print unknown-crash instead of the proper error message when a the data access is unaligned.

Reviewed By: kda, eugenis

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

show more ...


# 70f13bd7 18-Apr-2022 Kirill Stoimenov <kstoimenov@google.com>

Revert "[ASan] Fixed a reporting bug in (load|store)N functions which would print unknown-crash instead of the proper error message when a the data access is unaligned."

This reverts commit d81d3179

Revert "[ASan] Fixed a reporting bug in (load|store)N functions which would print unknown-crash instead of the proper error message when a the data access is unaligned."

This reverts commit d81d317999b350f9ba41e214149899ccd62eb998.

Reviewed By: kstoimenov

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

show more ...


# d81d3179 12-Apr-2022 Kirill Stoimenov <kstoimenov@google.com>

[ASan] Fixed a reporting bug in (load|store)N functions which would print unknown-crash instead of the proper error message when a the data access is unaligned.

Reviewed By: kda, eugenis

Differenti

[ASan] Fixed a reporting bug in (load|store)N functions which would print unknown-crash instead of the proper error message when a the data access is unaligned.

Reviewed By: kda, eugenis

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

show more ...


123