Page MenuHomePhabricator

eugenis (Evgenii Stepanov)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 3 2012, 3:00 AM (381 w, 5 d)

Recent Activity

Fri, Jan 24

eugenis created D73395: Support zero size types in StackSafetyAnalysis..
Fri, Jan 24, 4:45 PM · Restricted Project
eugenis created D73394: Fix StackSafetyAnalysis crash with scalable vector types..
Fri, Jan 24, 4:45 PM · Restricted Project
eugenis committed rZORGb4f7979eb1e7: Revert "Bump Android NDK version to r21." (authored by eugenis).
Revert "Bump Android NDK version to r21."
Fri, Jan 24, 2:39 PM
eugenis added a reverting change for rZORG9822b13842a6: Bump Android NDK version to r21.: rZORGb4f7979eb1e7: Revert "Bump Android NDK version to r21.".
Fri, Jan 24, 2:39 PM
eugenis committed rG1df8549b2689: [msan] Instrument x86.pclmulqdq* intrinsics. (authored by eugenis).
[msan] Instrument x86.pclmulqdq* intrinsics.
Fri, Jan 24, 2:37 PM
eugenis closed D73374: [msan] Instrument x86.pclmulqdq* intrinsics..
Fri, Jan 24, 2:36 PM · Restricted Project
eugenis committed rZORG9822b13842a6: Bump Android NDK version to r21. (authored by eugenis).
Bump Android NDK version to r21.
Fri, Jan 24, 2:26 PM
eugenis committed rG596d06145a2b: [GWP-ASan] enable/disable and fork support. (authored by eugenis).
[GWP-ASan] enable/disable and fork support.
Fri, Jan 24, 1:59 PM
eugenis closed D73294: [GWP-ASan] enable/disable and fork support..
Fri, Jan 24, 1:59 PM · Restricted Project, Restricted Project
eugenis accepted D73373: [GWP-ASan] Add names to anonymous mappings..

Hm, we should really fix that sometime soon.

Fri, Jan 24, 1:40 PM · Restricted Project, Restricted Project
eugenis updated the diff for D73294: [GWP-ASan] enable/disable and fork support..

fix lint warnings

Fri, Jan 24, 1:31 PM · Restricted Project, Restricted Project
eugenis added inline comments to D73294: [GWP-ASan] enable/disable and fork support..
Fri, Jan 24, 1:31 PM · Restricted Project, Restricted Project
eugenis added a comment to D73373: [GWP-ASan] Add names to anonymous mappings..

AFAIK we do test on android.
See http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-android/builds/27148/steps/run%20lit%20tests%20%5Baarch64%2Faosp_marlin-userdebug%2FPI%5D/logs/stdio - it lists a few scudo tests as unsupported, which means the rest of them have passed.

Fri, Jan 24, 1:04 PM · Restricted Project, Restricted Project
eugenis updated the diff for D73374: [msan] Instrument x86.pclmulqdq* intrinsics..

address comments

Fri, Jan 24, 12:55 PM · Restricted Project
eugenis added a comment to D73373: [GWP-ASan] Add names to anonymous mappings..

Could you add a test?

Fri, Jan 24, 11:28 AM · Restricted Project, Restricted Project
eugenis updated the diff for D73374: [msan] Instrument x86.pclmulqdq* intrinsics..

.

Fri, Jan 24, 11:28 AM · Restricted Project
eugenis created D73374: [msan] Instrument x86.pclmulqdq* intrinsics..
Fri, Jan 24, 11:13 AM · Restricted Project

Thu, Jan 23

eugenis updated the diff for D73305: [gwp-asan] Implement malloc_iterate..

address comments

Thu, Jan 23, 5:02 PM · Restricted Project, Restricted Project
eugenis added inline comments to D73294: [GWP-ASan] enable/disable and fork support..
Thu, Jan 23, 5:00 PM · Restricted Project, Restricted Project
eugenis updated the diff for D73294: [GWP-ASan] enable/disable and fork support..

address comments

Thu, Jan 23, 5:00 PM · Restricted Project, Restricted Project
eugenis created D73305: [gwp-asan] Implement malloc_iterate..
Thu, Jan 23, 4:21 PM · Restricted Project, Restricted Project
eugenis added a comment to D73294: [GWP-ASan] enable/disable and fork support..

I've merged two earlier changes (gwp-asan re-enablement and atfork/enable/disable support) in one because they are interconnected.

Thu, Jan 23, 2:11 PM · Restricted Project, Restricted Project
eugenis abandoned D72546: Scudo tests with GWP-ASan..

See https://reviews.llvm.org/D73294

Thu, Jan 23, 2:11 PM · Restricted Project, Restricted Project
eugenis abandoned D72674: WiP Make GuardedAlloc a member of Allocator..

See https://reviews.llvm.org/D73294

Thu, Jan 23, 2:11 PM · Restricted Project, Restricted Project
eugenis created D73294: [GWP-ASan] enable/disable and fork support..
Thu, Jan 23, 2:11 PM · Restricted Project, Restricted Project
eugenis committed rG966b5182babe: Change internal_start_thread arguments to match pthread_create. (authored by eugenis).
Change internal_start_thread arguments to match pthread_create.
Thu, Jan 23, 1:15 PM

Wed, Jan 22

eugenis updated the diff for D72366: [AArch64] Stack frame reordering..

rebase

Wed, Jan 22, 4:55 PM · Restricted Project
eugenis updated the diff for D72365: [MTE] Pin the tagged base pointer to one of the stack slots..

rebase

Wed, Jan 22, 4:55 PM · Restricted Project

Tue, Jan 21

eugenis accepted D73143: [scudo][standalone] Reduce Android region sizes to 128MB.

Fallback to a different allocator is hard, because then you need to implement PointerIsMine to redirect to the right allocator in free(), and AFAIK we don't have that in scudo for the larger allocations (i.e. secondary).

Tue, Jan 21, 3:09 PM · Restricted Project, Restricted Project
eugenis accepted D73055: [scudo][standalone] Allow sched_getaffinity to fail.

LGTM

Tue, Jan 21, 11:27 AM · Restricted Project, Restricted Project

Fri, Jan 17

eugenis committed rGd081962dead0: Merge memtag instructions with adjacent stack slots. (authored by eugenis).
Merge memtag instructions with adjacent stack slots.
Fri, Jan 17, 3:21 PM
eugenis closed D70286: Merge memtag instructions with adjacent stack slots..
Fri, Jan 17, 3:21 PM · Restricted Project
eugenis accepted D72896: hwasan: Remove dead code. NFCI..

LGTM, thank you!

Fri, Jan 17, 3:02 PM · Restricted Project, Restricted Project
eugenis accepted D72936: hwasan: Move .note.hwasan.globals note to hwasan.module_ctor comdat..

LGTM

Fri, Jan 17, 1:36 PM · Restricted Project

Thu, Jan 16

eugenis added inline comments to D72882: [scudo][standalone] WIP: make release interval configurable.
Thu, Jan 16, 4:12 PM · Restricted Project, Restricted Project

Wed, Jan 15

eugenis added a comment to D70286: Merge memtag instructions with adjacent stack slots..

friendly ping

Wed, Jan 15, 5:01 PM · Restricted Project

Mon, Jan 13

eugenis created D72674: WiP Make GuardedAlloc a member of Allocator..
Mon, Jan 13, 6:23 PM · Restricted Project, Restricted Project
eugenis added inline comments to D72470: [scudo][standalone] Fork support.
Mon, Jan 13, 6:14 PM · Restricted Project, Restricted Project
eugenis added a comment to D72470: [scudo][standalone] Fork support.

FWIW I'm ok with this landing in the previous version, disabling GWP-ASan, because its integration in scudo is so broken right now.

Mon, Jan 13, 5:00 PM · Restricted Project, Restricted Project
eugenis added inline comments to D72470: [scudo][standalone] Fork support.
Mon, Jan 13, 1:43 PM · Restricted Project, Restricted Project
eugenis accepted D72470: [scudo][standalone] Fork support.

LGTM

Mon, Jan 13, 11:13 AM · Restricted Project, Restricted Project
eugenis added a comment to D72470: [scudo][standalone] Fork support.

I'm concerned about the removal of gwp-asan.
Could you check if https://reviews.llvm.org/D72546 helps?

Mon, Jan 13, 10:44 AM · Restricted Project, Restricted Project

Fri, Jan 10

eugenis added a comment to D72546: Scudo tests with GWP-ASan..

This is meant to go on top of

https://reviews.llvm.org/D72470

with the cmake bits that disable GWP-ASan reverted.

Fri, Jan 10, 6:58 PM · Restricted Project, Restricted Project
eugenis updated the diff for D72546: Scudo tests with GWP-ASan..

remove a ton of unrelated changes

Fri, Jan 10, 6:55 PM · Restricted Project, Restricted Project
eugenis updated the diff for D72546: Scudo tests with GWP-ASan..

Removed scudo+gwp_asan tests.
Added fork support to gwp_asan and associated tests.

Fri, Jan 10, 6:55 PM · Restricted Project, Restricted Project
eugenis added a comment to D72546: Scudo tests with GWP-ASan..

I'm not sure this is a good idea after all.
We'd need to also bump sampling rate to 1 for reliable testing, and that does not work with scudo tests which specifically test the scudo implementation, and not a random posix-compliant allocator.

Fri, Jan 10, 5:20 PM · Restricted Project, Restricted Project
eugenis created D72546: Scudo tests with GWP-ASan..
Fri, Jan 10, 4:08 PM · Restricted Project, Restricted Project
eugenis committed rGa5a6fd3f95a9: Summary: update macro for OFF_T so that sanitizer works on AARCH64. (authored by yuanzi).
Summary: update macro for OFF_T so that sanitizer works on AARCH64.
Fri, Jan 10, 1:38 PM
eugenis closed D72367: Summary: update macro for OFF_T so that sanitizer works on AARCH64..
Fri, Jan 10, 1:38 PM · Restricted Project, Restricted Project
eugenis accepted D72367: Summary: update macro for OFF_T so that sanitizer works on AARCH64..

LGTM

Fri, Jan 10, 1:12 PM · Restricted Project, Restricted Project
eugenis added a comment to D72367: Summary: update macro for OFF_T so that sanitizer works on AARCH64..

Please update all the other implementations of internal_mmap

Fri, Jan 10, 12:52 PM · Restricted Project, Restricted Project
eugenis added a comment to D72367: Summary: update macro for OFF_T so that sanitizer works on AARCH64..

OFF_T magic is about matching libc.so ABI in the interceptors.
internal_mmap does not have to deal with it, and it can simply use uptr for the offset argument, unless I'm missing something.

Fri, Jan 10, 10:03 AM · Restricted Project, Restricted Project
eugenis added a comment to D72470: [scudo][standalone] Fork support.

SCUDO_PREFIX(Mutex) can be acquired in the child process, and in the parent process, and is not held during fork. That's a potential deadlock.
The condvar code reduces the window for it, but does not eliminate it completely.
Why can't malloc_disable() simply directly call allocator.disable(), and the same in malloc_enable?

Fri, Jan 10, 9:43 AM · Restricted Project, Restricted Project

Thu, Jan 9

eugenis added inline comments to D72470: [scudo][standalone] Fork support.
Thu, Jan 9, 5:09 PM · Restricted Project, Restricted Project
eugenis updated the diff for D70286: Merge memtag instructions with adjacent stack slots..

Updated a comment.
Renamed "old" STGloop instructions to STGloop_wback, and new ones to STGloop.

Thu, Jan 9, 1:50 PM · Restricted Project

Wed, Jan 8

eugenis updated the diff for D70286: Merge memtag instructions with adjacent stack slots..

Fixed the tied use of a non-register problem by introducing _untied versions to STGloop pseudos for use with a FrameIndex operand.

Wed, Jan 8, 5:20 PM · Restricted Project
eugenis committed rG58deb20dd2df: Revert "Merge memtag instructions with adjacent stack slots." (authored by eugenis).
Revert "Merge memtag instructions with adjacent stack slots."
Wed, Jan 8, 2:42 PM
eugenis added a reverting change for rGb675a7628ce6: Merge memtag instructions with adjacent stack slots.: rG58deb20dd2df: Revert "Merge memtag instructions with adjacent stack slots.".
Wed, Jan 8, 2:42 PM
eugenis reopened D70286: Merge memtag instructions with adjacent stack slots..
Wed, Jan 8, 2:42 PM · Restricted Project
eugenis added inline comments to D70286: Merge memtag instructions with adjacent stack slots..
Wed, Jan 8, 2:42 PM · Restricted Project
eugenis added a comment to D72364: [scudo][standalone] Modify malloc_{enable,disable} wrt fork.

I see. I think the other approach could be safer. Grab all the locks before fork and release them after fork. This will also allow user applications to use malloc after fork, which ex. glibc allocator supports.

I think the second approach is more keen to "if allocator is disabled when we call fork, wait until it's enabled", as opposed to disabling it pre-fork.

Wed, Jan 8, 12:23 PM · Restricted Project, Restricted Project
eugenis added a comment to D72364: [scudo][standalone] Modify malloc_{enable,disable} wrt fork.

I see. I think the other approach could be safer. Grab all the locks before fork and release them after fork. This will also allow user applications to use malloc after fork, which ex. glibc allocator supports.

Wed, Jan 8, 11:45 AM · Restricted Project, Restricted Project
eugenis committed rGb675a7628ce6: Merge memtag instructions with adjacent stack slots. (authored by eugenis).
Merge memtag instructions with adjacent stack slots.
Wed, Jan 8, 11:09 AM
eugenis closed D70286: Merge memtag instructions with adjacent stack slots..
Wed, Jan 8, 11:08 AM · Restricted Project
eugenis added a comment to D72364: [scudo][standalone] Modify malloc_{enable,disable} wrt fork.

Could we do this exact same thing in Android? I find this behavior (auto-enabling the allocator after fork) unexpected, and it makes the interface even more confusing then it is now.

Wed, Jan 8, 10:40 AM · Restricted Project, Restricted Project

Tue, Jan 7

eugenis added inline comments to D72367: Summary: update macro for OFF_T so that sanitizer works on AARCH64..
Tue, Jan 7, 6:12 PM · Restricted Project, Restricted Project
eugenis added inline comments to D72367: Summary: update macro for OFF_T so that sanitizer works on AARCH64..
Tue, Jan 7, 4:37 PM · Restricted Project, Restricted Project
eugenis added a comment to D72366: [AArch64] Stack frame reordering..

This revision and its two dependencies improve MTE code size of chromium on aarch64-linux-android by slightly more than 1%.

Tue, Jan 7, 3:14 PM · Restricted Project
eugenis added a child revision for D72365: [MTE] Pin the tagged base pointer to one of the stack slots.: D72366: [AArch64] Stack frame reordering..
Tue, Jan 7, 3:07 PM · Restricted Project
eugenis added a child revision for D70286: Merge memtag instructions with adjacent stack slots.: D72365: [MTE] Pin the tagged base pointer to one of the stack slots..
Tue, Jan 7, 3:07 PM · Restricted Project
eugenis added a parent revision for D72366: [AArch64] Stack frame reordering.: D72365: [MTE] Pin the tagged base pointer to one of the stack slots..
Tue, Jan 7, 3:07 PM · Restricted Project
eugenis added a parent revision for D72365: [MTE] Pin the tagged base pointer to one of the stack slots.: D70286: Merge memtag instructions with adjacent stack slots..
Tue, Jan 7, 3:07 PM · Restricted Project
eugenis created D72366: [AArch64] Stack frame reordering..
Tue, Jan 7, 3:06 PM · Restricted Project
eugenis created D72365: [MTE] Pin the tagged base pointer to one of the stack slots..
Tue, Jan 7, 3:04 PM · Restricted Project

Mon, Jan 6

eugenis committed rG7ba4595c86be: [msan] Fix underflow in qsort interceptor. (authored by eugenis).
[msan] Fix underflow in qsort interceptor.
Mon, Jan 6, 4:22 PM
eugenis committed rGb5e7f95cfbeb: [msan] Check qsort input. (authored by eugenis).
[msan] Check qsort input.
Mon, Jan 6, 3:13 PM
eugenis closed D71780: [msan] Check qsort input..
Mon, Jan 6, 3:13 PM · Restricted Project, Restricted Project
eugenis added inline comments to D70286: Merge memtag instructions with adjacent stack slots..
Mon, Jan 6, 3:12 PM · Restricted Project
eugenis added a comment to D71780: [msan] Check qsort input..

what is about clang-format?

Mon, Jan 6, 3:03 PM · Restricted Project, Restricted Project
eugenis updated the diff for D70286: Merge memtag instructions with adjacent stack slots..

Addressed review comments and most of the clang-tidy findings.

Mon, Jan 6, 3:03 PM · Restricted Project
eugenis committed rG40a80a0a19f4: Lower TAGPstack with negative offset to SUBG. (authored by eugenis).
Lower TAGPstack with negative offset to SUBG.
Mon, Jan 6, 11:55 AM
eugenis closed D72123: Lower TAGPstack with negative offset to SUBG..
Mon, Jan 6, 11:55 AM · Restricted Project

Thu, Jan 2

eugenis created D72123: Lower TAGPstack with negative offset to SUBG..
Thu, Jan 2, 6:16 PM · Restricted Project
eugenis updated the diff for D70286: Merge memtag instructions with adjacent stack slots..

clang-format

Thu, Jan 2, 5:28 PM · Restricted Project
eugenis added a comment to D70286: Merge memtag instructions with adjacent stack slots..

PTAL

Thu, Jan 2, 5:28 PM · Restricted Project
eugenis updated the diff for D70286: Merge memtag instructions with adjacent stack slots..

Cleaned up the code and extended it to allow gaps in a sequence of memory tagging instructions (in which case subsequences before and after the gap would be optimized separatly).

Thu, Jan 2, 4:59 PM · Restricted Project
eugenis committed rG3e5eac035801: Fix llvm-symbolizer tests on Windows, one more time. (authored by eugenis).
Fix llvm-symbolizer tests on Windows, one more time.
Thu, Jan 2, 3:36 PM
eugenis added a comment to D72024: Add C source to two debug info tests..

Should be fixed in 3e5eac03580

Thu, Jan 2, 3:36 PM · Restricted Project
eugenis committed rG1c45852c828d: Add C source to two debug info tests. (authored by eugenis).
Add C source to two debug info tests.
Thu, Jan 2, 2:40 PM
eugenis closed D72024: Add C source to two debug info tests..
Thu, Jan 2, 2:39 PM · Restricted Project
eugenis committed rGb153fbefa3d6: Change dbg-*-tag-offset tests to use llvm-dwarfdump. (authored by eugenis).
Change dbg-*-tag-offset tests to use llvm-dwarfdump.
Thu, Jan 2, 2:39 PM
eugenis closed D72023: Change dbg-*-tag-offset tests to use llvm-dwarfdump..
Thu, Jan 2, 2:39 PM · Restricted Project
eugenis added inline comments to D72023: Change dbg-*-tag-offset tests to use llvm-dwarfdump..
Thu, Jan 2, 2:39 PM · Restricted Project
eugenis updated the diff for D72023: Change dbg-*-tag-offset tests to use llvm-dwarfdump..

.

Thu, Jan 2, 2:39 PM · Restricted Project
eugenis added inline comments to D72024: Add C source to two debug info tests..
Thu, Jan 2, 1:45 PM · Restricted Project
eugenis updated the diff for D72024: Add C source to two debug info tests..

reworded the comment

Thu, Jan 2, 1:40 PM · Restricted Project
eugenis updated the diff for D72023: Change dbg-*-tag-offset tests to use llvm-dwarfdump..

tighten the test with CHECK-NOT

Thu, Jan 2, 1:36 PM · Restricted Project

Mon, Dec 30

eugenis added a comment to D70753: hwasan: add tag_offset DWARF attribute to optimized debug info.

https://reviews.llvm.org/D72023

Mon, Dec 30, 6:13 PM · Restricted Project
eugenis created D72023: Change dbg-*-tag-offset tests to use llvm-dwarfdump..
Mon, Dec 30, 6:13 PM · Restricted Project
eugenis added a comment to D70629: llvm-symbolizer: Support loclist in FRAME..

https://reviews.llvm.org/D72024

Mon, Dec 30, 6:13 PM · Restricted Project