Page MenuHomePhabricator

delcypher (Dan Liew)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 21 2015, 4:29 PM (265 w, 1 d)

Recent Activity

Mon, Aug 31

delcypher accepted D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.

LGTM provided that you explain in the commit message why this change is being made.

Mon, Aug 31, 3:28 PM · Restricted Project
delcypher added a comment to D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.

Also, I understand that the code in question isn't best already, but I don't have the bandwidth to refactor and test any more extensive changes. I'm only trying to address the problem of getting -arch arm64 / arm64e passed into tests, otherwise we're testing the wrong thing. Let's focus on that, please.

Mon, Aug 31, 3:25 PM · Restricted Project
delcypher added inline comments to D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.
Mon, Aug 31, 3:22 PM · Restricted Project
delcypher added inline comments to D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.
Mon, Aug 31, 1:23 PM · Restricted Project
delcypher added a comment to D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.

Side note: This get_test_cc_for_arch function is bad in multiple ways.

Mon, Aug 31, 1:18 PM · Restricted Project
delcypher requested changes to D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.
Mon, Aug 31, 1:08 PM · Restricted Project
delcypher added a comment to D86379: [sanitizer] When building tests on Darwin, always pass -arch and other common flags.

Could you use get_test_cflags_for_apple_platform platform instead at all the call site?

Mon, Aug 31, 1:07 PM · Restricted Project

Aug 20 2020

delcypher accepted D85952: [TSan][Darwin] Enable test on non-macOS platforms.
Aug 20 2020, 12:22 PM · Restricted Project
delcypher added a comment to D85952: [TSan][Darwin] Enable test on non-macOS platforms.

You should probably refer to https://reviews.llvm.org/D85803 or the commit that removed -mmacosx-version-min=10.12 in the commit message. Other than that LGTM. Thanks for cleaning this up.

Aug 20 2020, 12:22 PM · Restricted Project
delcypher accepted D85803: [TSan][Darwin] Remove unnecessary lit substitution.
Aug 20 2020, 12:20 PM · Restricted Project

Aug 17 2020

delcypher added inline comments to D86103: [TSan][libdispatch] Ensure TSan dylib works on old systems.
Aug 17 2020, 2:18 PM · Restricted Project

Aug 13 2020

delcypher added a comment to D85803: [TSan][Darwin] Remove unnecessary lit substitution.

@yln Are you sure this actually works for all platforms, in particular the watchOS simulator? The code you link (https://github.com/llvm/llvm-project/blob/master/compiler-rt/lib/tsan/CMakeLists.txt#L122) is not the minimum deploy target. That code just checks the SDK version used to build which is different from the minimum deploy target used.

Aug 13 2020, 1:59 PM · Restricted Project
delcypher added a comment to D85925: [compiler-rt][Darwin] Refactor minimum deployment target substitutions.

LGTM. Other than the nit.

Aug 13 2020, 1:49 PM · Restricted Project
delcypher added inline comments to D85854: [TSan][libdispatch] Add interceptors for dispatch_async_and_wait().
Aug 13 2020, 12:20 PM · Restricted Project

Aug 6 2020

delcypher added a comment to D85378: Fix off-by-one error in size of the required shadow memory passed to `MapDynamicShadow`..

@vitalybuka Do I need to worry about overflow here, i.e. kHighMemEnd is ULONG_MAX on some platform in which case we'd overflow and therefore ask for a shadow size of 0?

Aug 6 2020, 12:11 PM · Restricted Project
delcypher added a comment to D85387: [NFC] Make argument name passed to `FindAvailableMemoryRange()` consistent with parameter name..

@tejohnson Side comment about the refactor. The comments on MapDynamicShadow(...) say that is function is actually supposed to mmap the found memory as NO_ACCESS. The current implementation doesn't do this. It just finds a space but doesn't mmap it. Is this a problem?

Aug 6 2020, 12:02 PM · Restricted Project
delcypher added a comment to D85389: Fix bug where we request a shadow memory one page larger than necessary..

@yln Note there are other bugs here but I plan to fix this in future commits (e.g. if (size < gap_size) should be if (size <= gap_size)).

Aug 6 2020, 11:59 AM · Restricted Project
delcypher added a comment to D85378: Fix off-by-one error in size of the required shadow memory passed to `MapDynamicShadow`..

@tejohnson Looks like this bug is present on Linux too

uptr FindDynamicShadowStart() {
  uptr shadow_size_bytes = MemToShadowSize(kHighMemEnd);
#if ASAN_PREMAP_SHADOW          
  if (!PremapShadowFailed())
    return FindPremappedShadowStart(shadow_size_bytes);
#endif 

Thanks. Added @vitalybuka as reviewer since he may have a better understanding of the implications, I only just started looking at sanitizer code recently. Similar question to @yln - does this manifest now given the page size alignment? Could you fix the linux code as well?

Aug 6 2020, 11:58 AM · Restricted Project
delcypher added a comment to D85378: Fix off-by-one error in size of the required shadow memory passed to `MapDynamicShadow`..
In D85378#2200000, @yln wrote:

This latent bug was likely hidden because the shadow memory size is
always page aligned due to being allocated by mmap.

Is this bug still latent, or does it manifest now? Can you describe what happens when it is triggered?

Aug 6 2020, 11:57 AM · Restricted Project

Aug 5 2020

delcypher updated the summary of D85389: Fix bug where we request a shadow memory one page larger than necessary..
Aug 5 2020, 6:51 PM · Restricted Project
delcypher requested review of D85389: Fix bug where we request a shadow memory one page larger than necessary..
Aug 5 2020, 6:43 PM · Restricted Project
delcypher requested review of D85387: [NFC] Make argument name passed to `FindAvailableMemoryRange()` consistent with parameter name..
Aug 5 2020, 6:16 PM · Restricted Project
delcypher added a comment to D85378: Fix off-by-one error in size of the required shadow memory passed to `MapDynamicShadow`..

@tejohnson Looks like this bug is present on Linux too

Aug 5 2020, 5:35 PM · Restricted Project
delcypher requested review of D85378: Fix off-by-one error in size of the required shadow memory passed to `MapDynamicShadow`..
Aug 5 2020, 5:06 PM · Restricted Project

Jul 29 2020

delcypher accepted D84892: [Darwin][compiler-rt] kern.osproductversion unavailable pre macOS 10.13.

LGTM

Jul 29 2020, 3:32 PM · Restricted Project

Jul 27 2020

delcypher accepted D83977: [Darwin] Fix OS version checks inside simulators.

LGTM except for the lint checks failing. Please fix those before landing.

Jul 27 2020, 6:33 PM · Restricted Project
delcypher added inline comments to D83977: [Darwin] Fix OS version checks inside simulators.
Jul 27 2020, 6:18 PM · Restricted Project

Jul 24 2020

delcypher added inline comments to D83977: [Darwin] Fix OS version checks inside simulators.
Jul 24 2020, 6:59 PM · Restricted Project
delcypher requested changes to D83977: [Darwin] Fix OS version checks inside simulators.

Looks really good. I just have a few nits.

Jul 24 2020, 6:57 PM · Restricted Project

Jul 22 2020

delcypher updated subscribers of D83977: [Darwin] Fix OS version checks inside simulators.
Jul 22 2020, 5:51 PM · Restricted Project

Jul 21 2020

delcypher committed rG923cf890d15a: Avoid failing a CHECK in `DlAddrSymbolizer::SymbolizePC`. (authored by delcypher).
Avoid failing a CHECK in `DlAddrSymbolizer::SymbolizePC`.
Jul 21 2020, 12:50 PM
delcypher closed D84262: Avoid failing a CHECK in `DlAddrSymbolizer::SymbolizePC`..
Jul 21 2020, 12:50 PM · Restricted Project
delcypher updated the diff for D84262: Avoid failing a CHECK in `DlAddrSymbolizer::SymbolizePC`..

Fix failing test due to LSan.

Jul 21 2020, 12:47 PM · Restricted Project
Herald added a project to D84262: Avoid failing a CHECK in `DlAddrSymbolizer::SymbolizePC`.: Restricted Project.
Jul 21 2020, 12:14 PM · Restricted Project

Jul 17 2020

delcypher added inline comments to D83977: [Darwin] Fix OS version checks inside simulators.
Jul 17 2020, 2:30 PM · Restricted Project

Jul 16 2020

delcypher added inline comments to D79979: [Darwin] Fix OS version checks inside simulators.
Jul 16 2020, 11:03 AM · Restricted Project

Jul 14 2020

GitHub <noreply@github.com> committed rG4ee92ef9e7a0: Merge pull request #1104 from danliew-apple/cherry-pick-62083617 (authored by delcypher).
Merge pull request #1104 from danliew-apple/cherry-pick-62083617
Jul 14 2020, 4:44 PM
delcypher committed rGb5749104908b: Add missing call to `Symbolizer::LateInitialize()` in UBSan's standalone init. (authored by delcypher).
Add missing call to `Symbolizer::LateInitialize()` in UBSan's standalone init.
Jul 14 2020, 4:44 PM
GitHub <noreply@github.com> committed rGc94d846640a2: Merge pull request #1103 from danliew-apple/cherry-pick-62067724 (authored by delcypher).
Merge pull request #1103 from danliew-apple/cherry-pick-62067724
Jul 14 2020, 4:44 PM
delcypher committed rGe8a928d0b547: Unbreak ASan runtime in the simulators. (authored by delcypher).
Unbreak ASan runtime in the simulators.
Jul 14 2020, 4:44 PM
GitHub <noreply@github.com> committed rG86531c48cba5: Merge pull request #1095 from danliew-apple/cherry-pick-58789439_part3 (authored by delcypher).
Merge pull request #1095 from danliew-apple/cherry-pick-58789439_part3
Jul 14 2020, 4:43 PM
delcypher committed rGcf8a197fa250: [Darwin] Fix symbolization for recent simulator runtimes. (authored by delcypher).
[Darwin] Fix symbolization for recent simulator runtimes.
Jul 14 2020, 4:43 PM
delcypher committed rG1711bf6dfde3: [NFC] Introduce a `LateInitialize()` method to `SymbolizerTool` that is called… (authored by delcypher).
[NFC] Introduce a `LateInitialize()` method to `SymbolizerTool` that is called…
Jul 14 2020, 4:43 PM
delcypher committed rGbcffddf04b81: [Darwin] Fix a bug where the symbolizer would examine the wrong process. (authored by delcypher).
[Darwin] Fix a bug where the symbolizer would examine the wrong process.
Jul 14 2020, 4:43 PM
GitHub <noreply@github.com> committed rG95d1a2c4e813: Merge pull request #1071 from danliew-apple/cherry-pick-58789439_part2 (authored by delcypher).
Merge pull request #1071 from danliew-apple/cherry-pick-58789439_part2
Jul 14 2020, 4:43 PM
delcypher committed rG6a3b6b56f94f: [Sanitizer Common] Show command used to launch symbolizer process at high… (authored by delcypher).
[Sanitizer Common] Show command used to launch symbolizer process at high…
Jul 14 2020, 4:43 PM
GitHub <noreply@github.com> committed rG7533999e5534: Merge pull request #983 from danliew-apple/cherry-pick-55986279 (authored by delcypher).
Merge pull request #983 from danliew-apple/cherry-pick-55986279
Jul 14 2020, 4:37 PM
delcypher committed rGe0481bd3f668: [ASan] Fix issue where system log buffer was not cleared after reporting an… (authored by delcypher).
[ASan] Fix issue where system log buffer was not cleared after reporting an…
Jul 14 2020, 4:37 PM
delcypher committed rG0186eef66f27: Only add `darwin_log_cmd` lit shell test feature when the log can be queried. (authored by delcypher).
Only add `darwin_log_cmd` lit shell test feature when the log can be queried.
Jul 14 2020, 4:37 PM
GitHub <noreply@github.com> committed rGf09b1ef74384: Merge pull request #967 from apple/cherry-pick-58789439 (authored by delcypher).
Merge pull request #967 from apple/cherry-pick-58789439
Jul 14 2020, 4:36 PM
delcypher committed rG4f4a1c60ed6b: Add a `Symbolizer::GetEnvP()` method that allows symbolizer implementations to… (authored by delcypher).
Add a `Symbolizer::GetEnvP()` method that allows symbolizer implementations to…
Jul 14 2020, 4:36 PM
GitHub <noreply@github.com> committed rG02b3ae735cd0: Merge pull request #805 from danliew-apple/rdar_54654296_cherry_pick (authored by delcypher).
Merge pull request #805 from danliew-apple/rdar_54654296_cherry_pick
Jul 14 2020, 4:27 PM
delcypher committed rGbfeff4e92c13: Add a `%darwin_min_target_with_tls_support` lit substitution. (authored by delcypher).
Add a `%darwin_min_target_with_tls_support` lit substitution.
Jul 14 2020, 4:27 PM
delcypher committed rGabe91326515e: [compiler-rt] Make various Apple lit substitutions work correctly for other… (authored by delcypher).
[compiler-rt] Make various Apple lit substitutions work correctly for other…
Jul 14 2020, 4:27 PM
delcypher committed rGb87a77877c66: [compiler-rt] Disable building LibFuzzer for WatchOS and the corresponding… (authored by delcypher).
[compiler-rt] Disable building LibFuzzer for WatchOS and the corresponding…
Jul 14 2020, 4:27 PM
delcypher committed rG8b06b6b310d8: [compiler-rt] Provide a lit config variable that defines the minimum deployment… (authored by delcypher).
[compiler-rt] Provide a lit config variable that defines the minimum deployment…
Jul 14 2020, 4:27 PM
delcypher committed rG86bce56238f0: [compiler-rt] Add `DARWIN_osx_MIN_VER_FLAG` variable to match the other Apple… (authored by delcypher).
[compiler-rt] Add `DARWIN_osx_MIN_VER_FLAG` variable to match the other Apple…
Jul 14 2020, 4:27 PM
delcypher committed rGbe4422e08e7a: [compiler-rt] Use the correct minimum version flag for simulators on Apple… (authored by delcypher).
[compiler-rt] Use the correct minimum version flag for simulators on Apple…
Jul 14 2020, 4:27 PM
GitHub <noreply@github.com> committed rG1d3dc839270d: Merge pull request #697 from apple/rdar_58798733_cherry_pick (authored by delcypher).
Merge pull request #697 from apple/rdar_58798733_cherry_pick
Jul 14 2020, 4:18 PM
delcypher committed rG8d3781272dea: [CMake] Refactor iOS simulator/device test configuration generation code for… (authored by delcypher).
[CMake] Refactor iOS simulator/device test configuration generation code for…
Jul 14 2020, 4:18 PM
delcypher committed rGb47318a10bf1: [CMake][NFC] Refactor iOS simulator/device test configuration generation code… (authored by delcypher).
[CMake][NFC] Refactor iOS simulator/device test configuration generation code…
Jul 14 2020, 4:18 PM
delcypher committed rG45f541899349: [CMake][NFC] Refactor iOS simulator/device test configuration generation code… (authored by delcypher).
[CMake][NFC] Refactor iOS simulator/device test configuration generation code…
Jul 14 2020, 4:18 PM

Jul 9 2020

delcypher accepted D82918: [Sanitizer] Update macOS version checking.

LGTM

Jul 9 2020, 5:15 PM · Restricted Project
delcypher requested changes to D82918: [Sanitizer] Update macOS version checking.
Jul 9 2020, 4:44 PM · Restricted Project

Jul 8 2020

delcypher added a comment to D82918: [Sanitizer] Update macOS version checking.

Other than minor nit LGTM.

Jul 8 2020, 10:13 AM · Restricted Project

Jul 7 2020

delcypher committed rG8a8d6e2b7271: Revert "Temporarily disable the following failing tests on Darwin:" (authored by delcypher).
Revert "Temporarily disable the following failing tests on Darwin:"
Jul 7 2020, 10:16 AM
delcypher added a reverting change for rGf3a089506fdc: Temporarily disable the following failing tests on Darwin:: rG8a8d6e2b7271: Revert "Temporarily disable the following failing tests on Darwin:".
Jul 7 2020, 10:16 AM
delcypher committed rG888951aaca58: Disable interception of sigaltstack on i386 macOS. (authored by delcypher).
Disable interception of sigaltstack on i386 macOS.
Jul 7 2020, 10:16 AM
delcypher closed D82691: Disable interception of sigaltstack on i386 macOS..
Jul 7 2020, 10:16 AM · Restricted Project

Jun 26 2020

delcypher updated the summary of D82691: Disable interception of sigaltstack on i386 macOS..
Jun 26 2020, 5:05 PM · Restricted Project
delcypher created D82691: Disable interception of sigaltstack on i386 macOS..
Jun 26 2020, 4:48 PM · Restricted Project

Jun 9 2020

delcypher accepted D81197: [Darwin] Cleanup code via improved GetMacosAlignedVersion().

LGTM.

Jun 9 2020, 6:15 PM · Restricted Project
delcypher requested changes to D79979: [Darwin] Fix OS version checks inside simulators.
Jun 9 2020, 6:15 PM · Restricted Project

Jun 3 2020

delcypher accepted D80761: [Darwin] Add tests for OS version checking.

LGTM but please to make sure the linter is working correctly on your system before you land this.

Jun 3 2020, 12:38 PM · Restricted Project
delcypher accepted D79970: [Darwin] Improve runtime OS version checks.

I have an optional suggestion to improve this patch. Other than that LGTM.

Jun 3 2020, 12:05 PM · Restricted Project

Jun 2 2020

delcypher added inline comments to D80761: [Darwin] Add tests for OS version checking.
Jun 2 2020, 8:16 PM · Restricted Project
delcypher requested changes to D80761: [Darwin] Add tests for OS version checking.
Jun 2 2020, 8:16 PM · Restricted Project

Jun 1 2020

delcypher requested changes to D80761: [Darwin] Add tests for OS version checking.
Jun 1 2020, 12:59 PM · Restricted Project
delcypher requested changes to D79970: [Darwin] Improve runtime OS version checks.

LGTM other than the use of uint32_t.

Jun 1 2020, 12:59 PM · Restricted Project

May 30 2020

delcypher committed rGfc532c1a0dc6: Remove some non-determinism from the `Darwin/duplicate_os_log_reports.cpp` test. (authored by delcypher).
Remove some non-determinism from the `Darwin/duplicate_os_log_reports.cpp` test.
May 30 2020, 3:22 PM
delcypher requested changes to D79970: [Darwin] Improve runtime OS version checks.

Looks good apart from the missing check for underflow. This patch is of course broken for the simulators but it was before this patch and I know in future patches that you plan to fix this.

May 30 2020, 3:22 PM · Restricted Project
delcypher accepted D79965: [Darwin] Add and adopt a way to query for the Darwin kernel version.

LGTM

May 30 2020, 3:22 PM · Restricted Project

May 28 2020

delcypher committed rGe47e22642f92: Disable `duplicate_os_log_reports.cpp` test. (authored by delcypher).
Disable `duplicate_os_log_reports.cpp` test.
May 28 2020, 4:00 PM

May 27 2020

delcypher committed rGf3a089506fdc: Temporarily disable the following failing tests on Darwin: (authored by delcypher).
Temporarily disable the following failing tests on Darwin:
May 27 2020, 7:39 PM

May 20 2020

delcypher added inline comments to D79979: [Darwin] Fix OS version checks inside simulators.
May 20 2020, 7:20 PM · Restricted Project
delcypher requested changes to D79979: [Darwin] Fix OS version checks inside simulators.

I don't think calling os_system_version_get_current_version is safe.

May 20 2020, 7:20 PM · Restricted Project
delcypher accepted D79970: [Darwin] Improve runtime OS version checks.

LGTM, minus the problems in previous patches.

May 20 2020, 6:48 PM · Restricted Project
delcypher added a comment to D79965: [Darwin] Add and adopt a way to query for the Darwin kernel version.

Suggestion: You could also write a small Darwin only unit test that tests DarwinKernelVersion operators.

May 20 2020, 6:15 PM · Restricted Project
delcypher accepted D79958: [Darwin] Remove obsolete OS version checks.

LGTM. Nice clean up!

May 20 2020, 6:15 PM · Restricted Project
delcypher added a comment to D79965: [Darwin] Add and adopt a way to query for the Darwin kernel version.

Suggestion: You could write a Darwin only unit test that calls GetDarwinKernelVersion() and checks the result matches the kernel reported by the host.

May 20 2020, 6:15 PM · Restricted Project
delcypher requested changes to D79965: [Darwin] Add and adopt a way to query for the Darwin kernel version.

The overall idea looks good but I think the current patch has a few bugs.

May 20 2020, 6:15 PM · Restricted Project
delcypher added a comment to D73980: [lit][compiler-rt] add multi-cfgd test suite discovery.

@yln Any opinions on this? You touch lit much more than I do these days.

May 20 2020, 1:11 PM · Restricted Project
delcypher requested changes to D73980: [lit][compiler-rt] add multi-cfgd test suite discovery.

I've done another pass.

May 20 2020, 1:11 PM · Restricted Project

May 19 2020

delcypher committed rG5811f3a9f8d3: [asan_symbolize] Fix bug handling C++ symbols when using Atos. (authored by delcypher).
[asan_symbolize] Fix bug handling C++ symbols when using Atos.
May 19 2020, 4:35 PM
delcypher closed D79597: [asan_symbolize] Fix bug handling C++ symbols when using Atos..
May 19 2020, 4:35 PM · Restricted Project
delcypher updated the diff for D79597: [asan_symbolize] Fix bug handling C++ symbols when using Atos..

Tweak comment per feedback.

May 19 2020, 4:34 PM · Restricted Project
delcypher added a comment to D79597: [asan_symbolize] Fix bug handling C++ symbols when using Atos..
In D79597#2027534, @yln wrote:

LGTM with suggested update for the comment. Thanks!

I'm guessing the idea here was to try to drop any listed arguments for the function being symbolized.

If you are able to find out why this was done quickly (in a few minutes), then please document the reason here in this review thread.

May 19 2020, 4:34 PM · Restricted Project

May 8 2020

delcypher added a comment to D79540: [compile-rt] Reduce #ifdef noise for ptrauth.
In D79540#2027555, @yln wrote:

I think we should mirror what <ptrauth.h> does. I just copied the "nop macros" from the end of the header for the APIs we use.

May 8 2020, 7:21 PM · Restricted Project
delcypher accepted D79540: [compile-rt] Reduce #ifdef noise for ptrauth.
May 8 2020, 7:21 PM · Restricted Project
delcypher added a comment to D79540: [compile-rt] Reduce #ifdef noise for ptrauth.

@yln I did a quick investigation to see if we could do this without macros. Unfortunately this turns out to be really tricky. Below is a rough sketch that almost works. Due to the way the ptrauth calls are implemented Clang enforces that the key and string passed to ptrauth_string_discriminator be literals.
For the key we can use templates to make this work but the string literal proves to be difficult because string literals aren't allowed as template arguments.

May 8 2020, 12:52 PM · Restricted Project