Page MenuHomePhabricator

eugenis (Evgenii Stepanov)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 3 2012, 3:00 AM (323 w, 6 d)

Recent Activity

Yesterday

eugenis created D55874: [asan] Support running without /proc..
Tue, Dec 18, 6:26 PM
eugenis updated the diff for D55801: [sanitizer] Support running without fd 0,1,2..

Gave AdjustFd a more descriptive name.

Tue, Dec 18, 6:18 PM
eugenis accepted D55799: [asan] Restore ODR-violation detection on vtables.
Tue, Dec 18, 2:25 PM
eugenis accepted D55554: [HWASAN/rt] Implement support for memory intrinsics.

LGTM

Tue, Dec 18, 1:40 PM
eugenis accepted D55849: [sanitizer] Remove spurious semi-colon.

LGTM

Tue, Dec 18, 1:03 PM

Mon, Dec 17

eugenis added a comment to D55799: [asan] Restore ODR-violation detection on vtables.

LGTM
Does it mean that either --icf=none or odr-indicators must be used to avoid false positives?

Mon, Dec 17, 6:18 PM
eugenis created D55801: [sanitizer] Support running without fd 0,1,2..
Mon, Dec 17, 6:01 PM
eugenis accepted D55796: hwasan: Allow range of frame descriptors to be empty..

LGTM
consider keeping a CHECK_GE(end, beg)

Mon, Dec 17, 4:47 PM
eugenis accepted D55733: hwasan: Move ctor into a comdat..

LGTM

Mon, Dec 17, 1:03 PM
eugenis added inline comments to D55554: [HWASAN/rt] Implement support for memory intrinsics.
Mon, Dec 17, 12:43 PM

Fri, Dec 14

eugenis added inline comments to D55554: [HWASAN/rt] Implement support for memory intrinsics.
Fri, Dec 14, 10:34 AM

Thu, Dec 13

eugenis added a comment to D55581: Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

I've reverted both commits.
The aosp build I've tried is broken in a different way.
I'll reapply the changes once the bot can handle them.

Thu, Dec 13, 4:28 PM
eugenis committed rL349093: Revert "Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)".
Revert "Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)"
Thu, Dec 13, 3:51 PM
eugenis committed rCRT349093: Revert "Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)".
Revert "Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)"
Thu, Dec 13, 3:51 PM
eugenis committed rL349092: Revert "[hwasan] Android: Switch from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)".
Revert "[hwasan] Android: Switch from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)"
Thu, Dec 13, 3:51 PM
eugenis added inline comments to D55554: [HWASAN/rt] Implement support for memory intrinsics.
Thu, Dec 13, 3:21 PM

Wed, Dec 12

eugenis added a comment to D55581: Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

And of course, this broke the android O bot:
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-android/builds/17949

Wed, Dec 12, 5:03 PM
eugenis accepted D55621: [asan] Don't check ODR violations for particular types of globals.

LGTM

Wed, Dec 12, 3:08 PM
eugenis committed rL348986: [hwasan] Link ubsan_cxx to shared runtime library..
[hwasan] Link ubsan_cxx to shared runtime library.
Wed, Dec 12, 2:59 PM
eugenis committed rCRT348986: [hwasan] Link ubsan_cxx to shared runtime library..
[hwasan] Link ubsan_cxx to shared runtime library.
Wed, Dec 12, 2:59 PM
eugenis closed D55589: [hwasan] Link ubsan_cxx to shared runtime library..
Wed, Dec 12, 2:59 PM
eugenis added inline comments to D55621: [asan] Don't check ODR violations for particular types of globals.
Wed, Dec 12, 2:57 PM
eugenis committed rCRT348979: [hwasan] Verify Android TLS slot at startup..
[hwasan] Verify Android TLS slot at startup.
Wed, Dec 12, 2:17 PM
eugenis committed rL348979: [hwasan] Verify Android TLS slot at startup..
[hwasan] Verify Android TLS slot at startup.
Wed, Dec 12, 2:17 PM
eugenis closed D55587: [hwasan] Verify Android TLS slot at startup..
Wed, Dec 12, 2:17 PM
eugenis accepted D55581: Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

LGTM

Wed, Dec 12, 2:00 PM
eugenis accepted D55592: [hwasan] Android: Switch from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

LGTM

Wed, Dec 12, 2:00 PM
eugenis added a comment to D55554: [HWASAN/rt] Implement support for memory intrinsics.

Addressed some of review comments
Unfortunately I don't know how to use memset from __hwasan_memset, given this comment in hwasan.cc

// ACHTUNG! No system header includes in this file.
Wed, Dec 12, 1:07 PM

Tue, Dec 11

eugenis created D55589: [hwasan] Link ubsan_cxx to shared runtime library..
Tue, Dec 11, 5:44 PM
eugenis requested changes to D55581: Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

Hmm, this is not enough, you also need to update instrumentation in HWAddressSanitizer::getHwasanThreadSlotPtr

Tue, Dec 11, 4:48 PM
eugenis updated the diff for D55587: [hwasan] Verify Android TLS slot at startup..

Added newline at the end of the error message.

Tue, Dec 11, 4:42 PM
eugenis added a comment to D55581: Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

A follow-up to this change:
https://reviews.llvm.org/D55587

Tue, Dec 11, 4:25 PM
eugenis created D55587: [hwasan] Verify Android TLS slot at startup..
Tue, Dec 11, 4:25 PM
eugenis accepted D55581: Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6).

LGTM, thanks.

Tue, Dec 11, 3:22 PM
eugenis added inline comments to D55554: [HWASAN/rt] Implement support for memory intrinsics.
Tue, Dec 11, 1:11 PM

Mon, Dec 10

eugenis accepted D55066: [ASan] Minor documentation fix: clarify static linking limitation..

LGTM

Mon, Dec 10, 5:07 PM
eugenis updated subscribers of D55117: [HWASAN] Instrument memory intrinsics.

We should do the same thing in kernel mode, I think. Either way memintrinsic checking will require changes on the kernel side. @andreyknvl

Mon, Dec 10, 11:30 AM

Sun, Dec 9

eugenis added a comment to D55117: [HWASAN] Instrument memory intrinsics.

In fact, I changed my mind - let's do __hwasan_memset.
Tag checking in memset is part of software emulation; as such, it belongs in libclang_rt.hwasan, and not in any system library.

Sun, Dec 9, 7:51 PM

Fri, Dec 7

eugenis added a comment to D55117: [HWASAN] Instrument memory intrinsics.

Yes, I think so.

Fri, Dec 7, 1:46 PM
eugenis added a comment to D55117: [HWASAN] Instrument memory intrinsics.

I think I prefer regular memset to hwasan_memset.
hwasan variants can be slightly faster because they don't need to check that the address is not a shadow address (from stack tagging), but that is probably not a big deal.
Also the hardware implementation will definitely not have (or need) __hwasan_memset.

Fri, Dec 7, 1:20 PM

Tue, Dec 4

eugenis accepted D55157: [asan] Add clang flag -fsanitize-address-use-odr-indicator.

LGTM

Tue, Dec 4, 5:45 PM
eugenis added inline comments to D55157: [asan] Add clang flag -fsanitize-address-use-odr-indicator.
Tue, Dec 4, 5:22 PM
eugenis added inline comments to D55157: [asan] Add clang flag -fsanitize-address-use-odr-indicator.
Tue, Dec 4, 4:10 PM
eugenis accepted D55156: [asan] Split -asan-use-private-alias to -asan-use-odr-indicator.

LGTM

Tue, Dec 4, 12:48 PM
eugenis accepted D55254: [asan] Remove use_odr_indicator runtime flag.

LGTM

Tue, Dec 4, 12:46 PM

Mon, Dec 3

eugenis added a comment to D54905: [AddressSanitizer] Add flag to disable linking with CXX runtime.

Linux linkers won't include a member of an archive only because it resolves a weak symbol, so in your example the answer is none.

Mon, Dec 3, 1:24 PM
eugenis added a comment to D55066: [ASan] Minor documentation fix: clarify static linking limitation..

How about "Static linking of executables is not supported"?

Mon, Dec 3, 1:06 PM

Fri, Nov 30

eugenis accepted D55152: [compiler-rt] Use "ColumnLimit: 0" instead of "clang-format off" in tests.

LGTM

Fri, Nov 30, 4:28 PM
eugenis added a comment to D55146: [asan] Reduce binary size by using unnamed private aliases.

I've added original contributors of the private-alias thing to double check that we are not breaking any assumptions by doing this.

Fri, Nov 30, 4:04 PM
eugenis updated the summary of D55146: [asan] Reduce binary size by using unnamed private aliases.
Fri, Nov 30, 4:02 PM
eugenis requested changes to D55066: [ASan] Minor documentation fix: clarify static linking limitation..

Sorry for the delay.
This is wrong, static linking is NOT supported.
You could be confusing it with static linking of asan runtime library to an executable - that is and has always been the default.

Fri, Nov 30, 3:56 PM
eugenis accepted D54988: AArch64: Don't emit CFI for SCS register in nounwind functions..

LGTM

Fri, Nov 30, 10:47 AM
eugenis added a comment to D54905: [AddressSanitizer] Add flag to disable linking with CXX runtime.

Would turning asan operator new/delete into weak symbols help?

The new operator is already a weak symbol in libcxx, so it looks like an ODR violation, doesn't it?

Fri, Nov 30, 10:30 AM
eugenis added a comment to D55117: [HWASAN] Instrument memory intrinsics.

Looks fine to me.

Fri, Nov 30, 10:20 AM

Thu, Nov 29

eugenis added a comment to D54905: [AddressSanitizer] Add flag to disable linking with CXX runtime.

Our malloc definition is weak already, this will only change new/delete to match.

Thu, Nov 29, 11:26 AM
eugenis added a comment to D54905: [AddressSanitizer] Add flag to disable linking with CXX runtime.

Would turning asan operator new/delete into weak symbols help?

Thu, Nov 29, 9:22 AM

Wed, Nov 21

eugenis accepted D54504: [stack-safety] Local analysis implementation.

LGTM

Wed, Nov 21, 3:41 PM
eugenis accepted D54543: [stack-safety] Inter-Procedural Analysis implementation.

LGTM with nit

Wed, Nov 21, 3:39 PM

Tue, Nov 20

eugenis added inline comments to D54543: [stack-safety] Inter-Procedural Analysis implementation.
Tue, Nov 20, 4:56 PM
eugenis added inline comments to D54504: [stack-safety] Local analysis implementation.
Tue, Nov 20, 4:28 PM

Mon, Nov 19

eugenis accepted D54735: Driver: SCS is compatible with every other sanitizer..

LGTM

Mon, Nov 19, 5:01 PM

Nov 16 2018

eugenis added inline comments to D54656: [hwasan] implement free_checks_tail_magic=1.
Nov 16 2018, 4:32 PM
eugenis added inline comments to D54656: [hwasan] implement free_checks_tail_magic=1.
Nov 16 2018, 4:31 PM
eugenis added a comment to D54656: [hwasan] implement free_checks_tail_magic=1.

Users will hate these reports.
LGTM with comments

Nov 16 2018, 4:01 PM
eugenis accepted D54609: AArch64: Emit a call frame instruction for the shadow call stack register..

LGTM

Nov 16 2018, 11:34 AM
eugenis accepted D53789: [hwasan] optionally right-align heap allocations.

LGTM

Nov 16 2018, 11:14 AM

Nov 15 2018

eugenis added inline comments to D53789: [hwasan] optionally right-align heap allocations.
Nov 15 2018, 3:08 PM

Nov 14 2018

eugenis added inline comments to D54504: [stack-safety] Local analysis implementation.
Nov 14 2018, 3:14 PM
eugenis added a comment to D54469: Introduce new `disable_init` ASan option that is only supported on platforms where `SANITIZER_SUPPORTS_DISABLED_INIT` is true. Currently this is only supported on Darwin..

Is this needed for the clients of that out-of-process allocator inspection thing? Could it be a separate library that links asan allocator in out-of-process mode, but not the rest? Otherwise you are adding a mode of execution to ASan when there is no shadow mapping, and now that's something that everyone else have to keep in mind.

Nov 14 2018, 11:00 AM

Nov 9 2018

eugenis committed rCRT346557: [hwasan] Add entire report to abort message on Android..
[hwasan] Add entire report to abort message on Android.
Nov 9 2018, 1:56 PM
eugenis committed rL346557: [hwasan] Add entire report to abort message on Android..
[hwasan] Add entire report to abort message on Android.
Nov 9 2018, 1:56 PM
eugenis closed D54284: [hwasan] Add entire report to abort message on Android..
Nov 9 2018, 1:56 PM
eugenis accepted D54330: Driver: Make -fsanitize=shadow-call-stack compatible with -fsanitize-minimal-runtime..

LGTM

Nov 9 2018, 9:54 AM
eugenis added inline comments to D54284: [hwasan] Add entire report to abort message on Android..
Nov 9 2018, 9:05 AM

Nov 8 2018

eugenis created D54284: [hwasan] Add entire report to abort message on Android..
Nov 8 2018, 4:28 PM
eugenis committed rCRT346452: [hwasan] Remove dead code..
[hwasan] Remove dead code.
Nov 8 2018, 4:06 PM
eugenis committed rL346452: [hwasan] Remove dead code..
[hwasan] Remove dead code.
Nov 8 2018, 4:06 PM

Nov 6 2018

eugenis committed rCRT346284: [sanitizer] Only set soft coredump limit..
[sanitizer] Only set soft coredump limit.
Nov 6 2018, 5:07 PM
eugenis committed rL346284: [sanitizer] Only set soft coredump limit..
[sanitizer] Only set soft coredump limit.
Nov 6 2018, 5:07 PM
eugenis closed D54190: [sanitizer] Only set soft coredump limit..
Nov 6 2018, 5:06 PM
eugenis created D54190: [sanitizer] Only set soft coredump limit..
Nov 6 2018, 4:35 PM

Nov 5 2018

eugenis accepted D48445: [sanitizer] Use "fast mmap" kernel flag for shadow memory on macOS 10.13.4+.

LGTM

Nov 5 2018, 3:22 PM · Restricted Project

Nov 2 2018

eugenis accepted D54027: [compiler-rt] Support for passing through linker flags to libc++ build.

Yes, thanks you! LGTM

Nov 2 2018, 5:31 PM
eugenis added a comment to D53906: [ARM][AArch64] Increase TLS alignment to reserve space for Android's TCB.

You are right, initial-exec TLS would work for hwasan and msan. It would cost about 2 instructions and 1 load per function, compared to the fixed slot. Not great, but tolerable.

Nov 2 2018, 4:00 PM
eugenis accepted D53711: [compiler-rt] Workaround using new Clang with an old NDK..

Yes, this is much better!
LGTM

Nov 2 2018, 3:07 PM
eugenis requested changes to D54027: [compiler-rt] Support for passing through linker flags to libc++ build.

The same failure as MaskRay describes has kept sanitizer-linux bot red for several days now:
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/17090

Nov 2 2018, 10:45 AM

Nov 1 2018

eugenis updated subscribers of D53906: [ARM][AArch64] Increase TLS alignment to reserve space for Android's TCB.

@cryptoad
TLS_SLOT_TSAN is used in scudo, tsan and hwasan. AFAIK we don't yet depend on binary compatibility for either.

Nov 1 2018, 6:04 PM

Oct 31 2018

eugenis added a comment to D53910: [Ubsan] link minimal Ubsan into full Ubsan.

I agree, now that -fsanitize-minimal-runtime does not enforce that _only_ minimal runtime is used, it makes sense to split it per-sanitizer, with -fsanitize-minimal=<name>.

Oct 31 2018, 12:54 PM

Oct 30 2018

eugenis accepted D53811: [MSan] another take at instrumenting inline assembly - now with calls.

LGTM

Oct 30 2018, 3:54 PM

Oct 29 2018

eugenis added inline comments to D53789: [hwasan] optionally right-align heap allocations.
Oct 29 2018, 1:28 PM
eugenis added inline comments to D53811: [MSan] another take at instrumenting inline assembly - now with calls.
Oct 29 2018, 1:11 PM
eugenis accepted D53826: [ubsan-minimal] update comments in CMakeLists.txt.

LGTM

Oct 29 2018, 12:42 PM

Oct 26 2018

eugenis committed rCRT345394: [sanitizer] Fix mallopt test on Android..
[sanitizer] Fix mallopt test on Android.
Oct 26 2018, 8:17 AM
eugenis committed rL345394: [sanitizer] Fix mallopt test on Android..
[sanitizer] Fix mallopt test on Android.
Oct 26 2018, 8:15 AM

Oct 25 2018

eugenis committed rCRT345323: [sanitizer] Fix mallopt interceptor..
[sanitizer] Fix mallopt interceptor.
Oct 25 2018, 3:20 PM
eugenis committed rL345323: [sanitizer] Fix mallopt interceptor..
[sanitizer] Fix mallopt interceptor.
Oct 25 2018, 3:19 PM
eugenis added a comment to D53711: [compiler-rt] Workaround using new Clang with an old NDK..

Or, rather, define something like common_cxxflags in test/lit.common.cfg and apply them in all sanitizer tests.
This script should not edit compilation flags.

Oct 25 2018, 11:31 AM
eugenis added a comment to D53711: [compiler-rt] Workaround using new Clang with an old NDK..

Could you change config.clangxx in test/asan/lit.cfg instead?

Oct 25 2018, 11:26 AM

Oct 22 2018

eugenis accepted D53227: [hwasan] add stack frame descriptions..

Please rename the remaining FD's.
LGTM then.

Oct 22 2018, 5:36 PM
eugenis added inline comments to D53227: [hwasan] add stack frame descriptions..
Oct 22 2018, 4:28 PM