Page MenuHomePhabricator

kcc (Kostya Serebryany)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 3 2012, 4:55 AM (546 w, 3 d)

Recent Activity

Oct 10 2022

kcc accepted D135617: [docs] Update compiler-rt/CODE_OWNERS.TXT.

LGTM, thanks!

Oct 10 2022, 2:08 PM · Restricted Project, Restricted Project
kcc added a comment to D135312: [libFuzzer] update the libFuzzer docs to reflect the current state..

I spotted a typo

Oct 10 2022, 12:08 PM · Restricted Project, Restricted Project
kcc accepted rGfaea104ef17b: Fix a typo in the docs; NFC.

thanks! :)

Oct 10 2022, 12:02 PM · Restricted Project, Restricted Project

Oct 7 2022

kcc committed rGec96aea846ce: [libFuzzer] update the libFuzzer docs to reflect the current state. (authored by kcc).
[libFuzzer] update the libFuzzer docs to reflect the current state.
Oct 7 2022, 4:31 PM · Restricted Project, Restricted Project
kcc closed D135312: [libFuzzer] update the libFuzzer docs to reflect the current state..
Oct 7 2022, 4:31 PM · Restricted Project, Restricted Project

Oct 5 2022

kcc requested review of D135312: [libFuzzer] update the libFuzzer docs to reflect the current state..
Oct 5 2022, 1:22 PM · Restricted Project, Restricted Project

Sep 14 2022

kcc accepted D133157: Add -fsanitizer-coverage=control-flow.

LGTM

Sep 14 2022, 4:39 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
kcc added inline comments to D133157: Add -fsanitizer-coverage=control-flow.
Sep 14 2022, 2:43 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Sep 13 2022

kcc added inline comments to D133157: Add -fsanitizer-coverage=control-flow.
Sep 13 2022, 5:23 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
kcc added inline comments to D133157: Add -fsanitizer-coverage=control-flow.
Sep 13 2022, 4:16 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Sep 1 2022

kcc added inline comments to D133157: Add -fsanitizer-coverage=control-flow.
Sep 1 2022, 4:45 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
kcc added a comment to D133157: Add -fsanitizer-coverage=control-flow.

Cool!
please add the documentation and the run-time test to the same CL.

Sep 1 2022, 4:11 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Aug 24 2022

kcc added a comment to D132611: [ASan] rename left/right to before/after..

not arguing for or against, but I wonder how many output parsers will break.

not sure about asan, for hwasan we did some quite significant changes to the output format, and no one complained at us.

Aug 24 2022, 2:53 PM · Restricted Project, Restricted Project
kcc added a comment to D132611: [ASan] rename left/right to before/after..

not arguing for or against, but I wonder how many output parsers will break.

Aug 24 2022, 2:48 PM · Restricted Project, Restricted Project

Aug 10 2022

kcc added a comment to D131415: Remove function name from sanitize-memory-track-origins binary..

dropping the function name is fine, we have it from the stack traces.
the variable name can't be found anywhere else because in most cases
msan is used with -gline-tables-only, i.e. DWARF doesn't have the names of locals.

Aug 10 2022, 12:06 PM · Restricted Project, Restricted Project, Restricted Project
kcc added a comment to D131415: Remove function name from sanitize-memory-track-origins binary..

Where can I get the name of the variable? (I think it is buried in the debug info some place, but I would need an example to help me extract it.)
An alternative I thought of was putting this behind a flag.

Aug 10 2022, 9:16 AM · Restricted Project, Restricted Project, Restricted Project
kcc added a comment to D131415: Remove function name from sanitize-memory-track-origins binary..

please show an error message on a non-trivial test case
(lots of variables, some defined on the same line) before and after.
Code size is important, but we cannot decrease the report quality

Aug 10 2022, 9:04 AM · Restricted Project, Restricted Project, Restricted Project

Aug 2 2022

kcc added a reviewer for D130990: Libfuzzer fix for Ctrl + c not working with -fork and -ignore_crashes=1: vitalybuka.
Aug 2 2022, 11:00 PM · Restricted Project, Restricted Project, Restricted Project

Jul 14 2022

kcc committed rGef0081d60829: [SanitizerCoverage] add weak definitions for the load/store callbacks. (authored by kcc).
[SanitizerCoverage] add weak definitions for the load/store callbacks.
Jul 14 2022, 8:27 PM · Restricted Project, Restricted Project
kcc closed D129801: [SanitizerCoverage] add weak definitions for the load/store callbacks..
Jul 14 2022, 8:27 PM · Restricted Project, Restricted Project
kcc updated the diff for D129801: [SanitizerCoverage] add weak definitions for the load/store callbacks..

needed to add the same callbacks in more places.
Now the tests pass.

Jul 14 2022, 5:49 PM · Restricted Project, Restricted Project
kcc requested review of D129801: [SanitizerCoverage] add weak definitions for the load/store callbacks..
Jul 14 2022, 1:31 PM · Restricted Project, Restricted Project

Jun 30 2022

kcc committed rG92fb310151d2: [libFuzzer] Extend the fuzz target intarface to allow -1 return value. (authored by kcc).
[libFuzzer] Extend the fuzz target intarface to allow -1 return value.
Jun 30 2022, 1:22 PM · Restricted Project, Restricted Project, Restricted Project
kcc closed D128749: [libFuzzer] Extend the fuzz target intarface to allow -1 return value..
Jun 30 2022, 1:21 PM · Restricted Project, Restricted Project, Restricted Project

Jun 29 2022

kcc updated the diff for D128749: [libFuzzer] Extend the fuzz target intarface to allow -1 return value..

removed unneeded (void)CBRes;

Jun 29 2022, 11:12 AM · Restricted Project, Restricted Project, Restricted Project

Jun 28 2022

kcc published D128749: [libFuzzer] Extend the fuzz target intarface to allow -1 return value. for review.
Jun 28 2022, 11:52 AM · Restricted Project, Restricted Project, Restricted Project

Nov 22 2021

kcc added a comment to D114293: [ASan] Added __asan_shadow_memory variable which points to the beginning of the shadow region using some assembly trickery..

LGTM, but please wait for Vitaly

Nov 22 2021, 11:14 AM · Restricted Project, Restricted Project

Nov 19 2021

kcc added inline comments to D114293: [ASan] Added __asan_shadow_memory variable which points to the beginning of the shadow region using some assembly trickery..
Nov 19 2021, 3:35 PM · Restricted Project, Restricted Project

Nov 9 2021

kcc committed rGb7f3a4f4fa14: [sancov] add tracing for loads and store (authored by kcc).
[sancov] add tracing for loads and store
Nov 9 2021, 2:35 PM
kcc closed D113447: [sancov] add tracing for loads and store.
Nov 9 2021, 2:35 PM · Restricted Project, Restricted Project, Restricted Project
kcc added inline comments to D113447: [sancov] add tracing for loads and store.
Nov 9 2021, 10:29 AM · Restricted Project, Restricted Project, Restricted Project
kcc updated the diff for D113447: [sancov] add tracing for loads and store.

addressed review comments

Nov 9 2021, 10:26 AM · Restricted Project, Restricted Project, Restricted Project

Nov 8 2021

kcc requested review of D113447: [sancov] add tracing for loads and store.
Nov 8 2021, 5:57 PM · Restricted Project, Restricted Project, Restricted Project

Sep 21 2021

kcc added inline comments to D110119: [sanitizer coverage] write the pc-table at the process exit.
Sep 21 2021, 9:10 AM · Restricted Project
kcc committed rG11c533e1ea38: [sanitizer coverage] write the pc-table at the process exit (authored by kcc).
[sanitizer coverage] write the pc-table at the process exit
Sep 21 2021, 9:10 AM
kcc closed D110119: [sanitizer coverage] write the pc-table at the process exit.
Sep 21 2021, 9:09 AM · Restricted Project

Sep 20 2021

kcc requested review of D110119: [sanitizer coverage] write the pc-table at the process exit.
Sep 20 2021, 6:00 PM · Restricted Project

Sep 1 2021

kcc committed rGb0fdbadf9f09: [ubsan] warn inside the sigaction interceptor if static linking is suspected… (authored by kcc).
[ubsan] warn inside the sigaction interceptor if static linking is suspected…
Sep 1 2021, 12:37 PM
kcc closed D109081: [ubsan] warn inside the sigaction interceptor if static linking is suspected, and continue instead of crashing on null deref.
Sep 1 2021, 12:37 PM · Restricted Project
kcc requested review of D109081: [ubsan] warn inside the sigaction interceptor if static linking is suspected, and continue instead of crashing on null deref.
Sep 1 2021, 12:05 PM · Restricted Project

Aug 24 2021

kcc committed rG8103b0700dcb: [sanitizer coverage] add a basic default implementation of callbacks for… (authored by kcc).
[sanitizer coverage] add a basic default implementation of callbacks for…
Aug 24 2021, 2:57 PM
kcc closed D108405: [sanitizer coverage] add a basic default implementation of callbacks for -fsanitize-coverage=inline-8bit-counters,pc-table.
Aug 24 2021, 2:56 PM · Restricted Project
kcc added inline comments to D108405: [sanitizer coverage] add a basic default implementation of callbacks for -fsanitize-coverage=inline-8bit-counters,pc-table.
Aug 24 2021, 2:44 PM · Restricted Project

Aug 20 2021

kcc updated the diff for D108405: [sanitizer coverage] add a basic default implementation of callbacks for -fsanitize-coverage=inline-8bit-counters,pc-table.

one more test fix (can't expect xxd to be present)

Aug 20 2021, 9:56 AM · Restricted Project
kcc updated the diff for D108405: [sanitizer coverage] add a basic default implementation of callbacks for -fsanitize-coverage=inline-8bit-counters,pc-table.

fix a test

Aug 20 2021, 9:07 AM · Restricted Project

Aug 19 2021

kcc updated the diff for D108405: [sanitizer coverage] add a basic default implementation of callbacks for -fsanitize-coverage=inline-8bit-counters,pc-table.

fix dfsan build

Aug 19 2021, 3:18 PM · Restricted Project
kcc requested review of D108405: [sanitizer coverage] add a basic default implementation of callbacks for -fsanitize-coverage=inline-8bit-counters,pc-table.
Aug 19 2021, 1:52 PM · Restricted Project

Aug 18 2021

kcc added a comment to D108323: [asan] Added -inline-small-callbacks LLVM flag, which would force inline code for 8 and 16 byte data types when otherwise a callback would have been used..

What's the code size implications?

Aug 18 2021, 3:36 PM · Restricted Project, Restricted Project

Aug 4 2021

kcc committed rG597e407cf23b: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets (authored by kcc).
[libFuzzer] tests/examples for using libFuzzer for out-of-process targets
Aug 4 2021, 5:38 PM
kcc closed D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.
Aug 4 2021, 5:37 PM · Restricted Project
kcc updated the diff for D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.

limit the test to x86_64 linux as it is too experimental to be used elsewhere,
and __libfuzzer_extra_counters are linux-only anyway, currently.

Aug 4 2021, 5:12 PM · Restricted Project
kcc updated the diff for D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.

fixing incomplete fix, sorry

Aug 4 2021, 3:26 PM · Restricted Project
kcc added inline comments to D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.
Aug 4 2021, 3:25 PM · Restricted Project
kcc updated the diff for D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.

addressed one more review comment

Aug 4 2021, 3:25 PM · Restricted Project
kcc updated the diff for D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.

addressed review comments

Aug 4 2021, 3:23 PM · Restricted Project
kcc requested review of D107498: [libFuzzer] tests/examples for using libFuzzer for out-of-process targets.
Aug 4 2021, 1:33 PM · Restricted Project

Aug 3 2021

kcc added inline comments to D106676: Enable extra coverage counters on Windows.
Aug 3 2021, 12:45 PM · Restricted Project
kcc committed rGff163ef12b30: [libFuzzer] fix clang-tidy (authored by kcc).
[libFuzzer] fix clang-tidy
Aug 3 2021, 12:36 PM
kcc closed D107382: [libFuzzer] fix clang-tidy.
Aug 3 2021, 12:36 PM · Restricted Project
kcc requested review of D107382: [libFuzzer] fix clang-tidy.
Aug 3 2021, 11:43 AM · Restricted Project
kcc committed rG7c921753e0f5: [libFuzzer] replace Vector/Set with std::vector/std::set. The custom names are… (authored by kcc).
[libFuzzer] replace Vector/Set with std::vector/std::set. The custom names are…
Aug 3 2021, 11:31 AM
kcc closed D107374: [libFuzzer] replace Vector/Set with std::vector/std::set. The custom names are not required any more since we now build with a private version of libc++. Fix some of the 81+ character lines. Mechanical change, NFC expected..
Aug 3 2021, 11:31 AM · Restricted Project
kcc requested review of D107374: [libFuzzer] replace Vector/Set with std::vector/std::set. The custom names are not required any more since we now build with a private version of libc++. Fix some of the 81+ character lines. Mechanical change, NFC expected..
Aug 3 2021, 10:11 AM · Restricted Project
kcc added a comment to D106676: Enable extra coverage counters on Windows.

One comment that I have is a request to limit the number of #ifdefs in the code to at most one.
We typically achieve this by having platform-specific code in a platform-specific file, guarded with an ifdef.

Aug 3 2021, 7:48 AM · Restricted Project

Aug 2 2021

kcc added a reviewer for D106676: Enable extra coverage counters on Windows: morehouse.
Aug 2 2021, 3:09 PM · Restricted Project

Jul 15 2021

kcc accepted D106101: [asan] Slightly modified the documentation..

LGTM

Jul 15 2021, 4:30 PM · Restricted Project

Jul 12 2021

kcc added a comment to D105284: Greedy set cover implementation of `Merger::Merge`.

Thanks for the change!
Indeed, the current single-pass merge is far from perfect, and it's nice to see your numbers.

Jul 12 2021, 12:43 PM · Restricted Project
kcc added a reviewer for D105284: Greedy set cover implementation of `Merger::Merge`: morehouse.
Jul 12 2021, 12:24 PM · Restricted Project

Jun 17 2021

kcc added a comment to D104494: [dfsan] Replace dfs$ prefix with .dfsan suffix.

Yey, great idea! :)
(I am not reviewing the code; but the change looks straightforward)

Jun 17 2021, 4:56 PM · Restricted Project, Restricted Project, Restricted Project

Jun 7 2021

kcc updated subscribers of D102475: Prevent introduction of a dependency of libasan.a on libstdc++.

+Vitaly Buka <vitalybuka@google.com> +Matt Morehouse <mascasa@google.com>

Jun 7 2021, 10:19 AM · Restricted Project

Mar 2 2021

kcc added reviewers for D96120: [scudo] Port scudo sanitizer to Windows: kcc, pcc, vitalybuka.

We can't possibly maintain two variants of scudo.
All effort is currently spent on the newer (standalone) version.
I am afraid we will have to delete the older (non-standalone) variant entirely.
(And the sooner the better)

Mar 2 2021, 10:28 AM · Restricted Project, Restricted Project

Feb 24 2021

kcc added a comment to D96842: [dfsan] Do not specialize vector<bool> for DFSan.

ugh..
If I were the maintainer of this file, I would run away from this change.
Not because there is something wrong with it functionality-wise, but because of the ifdefs :(
We ourselves in the sanitizer land would reject a change with this many ifdefs w/o looking further.

Feb 24 2021, 3:35 PM · Restricted Project

Feb 17 2021

kcc added a comment to D96842: [dfsan] Do not specialize vector<bool> for DFSan.

(2 bytes per bit!)

1 byte per bit, hopefully. (for the new 8-bit mode only)

Feb 17 2021, 3:25 PM · Restricted Project
kcc added a comment to D96842: [dfsan] Do not specialize vector<bool> for DFSan.

The reason why we can't make this change as-is is that it modifies the API of std::vector when instantiated with bool when the dataflow sanitizer is used. Specifically, the specialization of vector<bool> has a different interface, it's not only an optimization. For example std::vector<bool>::reference has a .flip() method. So if someone is doing something like v[3].flip() (which is legal), now their code won't compile when they turn on the dataflow sanitizer. That's not acceptable, and it would make us non-conforming when the dataflow sanitizer is used.

Feb 17 2021, 1:52 PM · Restricted Project
kcc added a comment to D96842: [dfsan] Do not specialize vector<bool> for DFSan.

Why not?
DFSan is a separate ABI, you can't mix DFSan-ified code with non-DFSan-ified code.
There is no annotation that we can imagine to work in this case.
DFSan's metadata is per-byte, if we mix different taints in a single byte (8 packet bits) we get an overtaint, i.e. a false positive.
The only other solution for our users is to not use vector<bool>

Feb 17 2021, 9:04 AM · Restricted Project

Feb 11 2021

kcc accepted D96357: [Sanitizer] Fix sanitizer tests without reducing optimization levels.

LGTM, thanks for the better fix!

Feb 11 2021, 12:42 PM · Restricted Project

Feb 8 2021

kcc added a comment to D96198: [Sanitizer] Fix failing sanitizer tests.

yea, I am afraid that removing -O1 weakens our ability to find subtle bugs in how sanitizers work with the optimized code.
After all, most of the uses for the sanitizers are with -O1 and higher, so by testing with -O0 we are hiding potential problems.
I think the best is to prevent inlining (noinline attribute, or a command line if available)

Feb 8 2021, 4:00 PM · Restricted Project

Jan 11 2021

kcc added a comment to D93879: Add LLVMFuzzerAddToDictionary.

I am reluctant to extend the public interface in ways that
a) are likely to be useful for only few cases
b) are likely to remain libFuzzer-specific
c) already have an existing functionality that can be used instead). I mean the existing -dict flag (it's not exactly what you describe though)

Jan 11 2021, 6:09 PM · Restricted Project

Dec 4 2020

kcc added a comment to D92683: [compiler-rt][fuzzer] Make fuzzer interface header public.

This header is intentionally private, so that the fuzz targets remain engine-neutral.

Dec 4 2020, 1:30 PM · Restricted Project

Dec 2 2020

kcc added a comment to D92490: [msan] Do not use 77 as exit code, instead use 1.

This worked for us for many years.
Changing the default is likely to break some of the existing users.

Dec 2 2020, 2:04 PM · Restricted Project

Nov 3 2020

kcc added a reviewer for D89959: UBSAN: emit distinctive traps in trapping mode: morehouse.

did you consider approaches where the emitted code doesn't change, but the binary contains a debug-like metadata that corresponds to the trap instructions?
Matt (CC-ed) has a patch if this kind (for a different purpose) in the works .

Nov 3 2020, 3:23 PM · Restricted Project

Oct 20 2020

kcc accepted D89552: ASAN: Support detect_invalid_pointer_pairs=1 with detect_stack_use_after_return=1.

LGTM, thanks!

Oct 20 2020, 9:54 AM · Restricted Project

Oct 19 2020

kcc added a comment to D89755: [fuzzer] Add Windows Visual C++ exception intercept.

But I'm not sure how best to integrate this -- are there existing crashing tests somewhere I should add this to?

compiler-rt/test/fuzzer

Oct 19 2020, 6:05 PM · Restricted Project
kcc added a reviewer for D89755: [fuzzer] Add Windows Visual C++ exception intercept: metzman.

please no #ifdefs.
please add a test.

Oct 19 2020, 5:18 PM · Restricted Project
kcc added inline comments to D89552: ASAN: Support detect_invalid_pointer_pairs=1 with detect_stack_use_after_return=1.
Oct 19 2020, 10:49 AM · Restricted Project

Oct 16 2020

kcc updated subscribers of D89552: ASAN: Support detect_invalid_pointer_pairs=1 with detect_stack_use_after_return=1.
Oct 16 2020, 11:32 AM · Restricted Project
kcc added inline comments to D89552: ASAN: Support detect_invalid_pointer_pairs=1 with detect_stack_use_after_return=1.
Oct 16 2020, 11:31 AM · Restricted Project

Sep 23 2020

kcc added a comment to D88173: asan: Use `#if` to test CAN_SANITIZE_LEAKS.

a drive-by comment -- I would really appreciate *not* adding any new uses of C preprocessor.

Sep 23 2020, 12:23 PM · Restricted Project

Sep 2 2020

kcc added a reviewer for D86931: [Asan] Don't crash if metadata is not initialized: morehouse.
Sep 2 2020, 10:18 AM · Restricted Project

Aug 17 2020

kcc added a reviewer for D84808: [libFuzzer] Error and exit if user supplied fuzzer writeable directories don't exist: morehouse.

+Matt

Aug 17 2020, 12:34 PM · Restricted Project

Aug 14 2020

kcc added a comment to D85947: [DFSan] Don't unmap during dfsan_flush()..

Would it be possible to add a threaded test that fails w/o this change?
LGTM otherwise, thanks!

Aug 14 2020, 9:05 AM · Restricted Project

Aug 11 2020

kcc added a reviewer for D85359: [libFuzzer] Fix minimizing timeouts: morehouse.
Aug 11 2020, 9:51 AM · Restricted Project

Aug 10 2020

kcc added a comment to D84808: [libFuzzer] Error and exit if user supplied fuzzer writeable directories don't exist.

would it be acceptable to have an environment variable or launch parameter that could allow the silent creation of these directories?

Aug 10 2020, 5:50 PM · Restricted Project

Aug 6 2020

kcc added a comment to D84808: [libFuzzer] Error and exit if user supplied fuzzer writeable directories don't exist.
In D84808#2194844, @kcc wrote:

From the description:

this PR adds automatic directory creation for locations in which libFuzzer expects to write data.

I'd prefer libFuzzer to not create directories, but instead err-and-exit if those don't exist.

I can make this change, but is there a reason why this shouldn't be done? It seems more convenient for the end user but perhaps I'm overlooking a larger issue.

Aug 6 2020, 10:55 AM · Restricted Project
kcc added a comment to D85359: [libFuzzer] Fix minimizing timeouts.

O, wow, thanks for catching this.
Could you please add a test (in compiler-rt/test/fuzzer) that would reliably fail currently
and reliably pass with this change?

Aug 6 2020, 10:51 AM · Restricted Project

Aug 4 2020

kcc added a comment to D84808: [libFuzzer] Error and exit if user supplied fuzzer writeable directories don't exist.

From the description:

this PR adds automatic directory creation for locations in which libFuzzer expects to write data.

Aug 4 2020, 4:11 PM · Restricted Project
kcc added a comment to D84808: [libFuzzer] Error and exit if user supplied fuzzer writeable directories don't exist.

I'd rather fail instead of silently creating new dirs, to be consistent with the other behavior

Aug 4 2020, 1:21 PM · Restricted Project
kcc added inline comments to D84913: [libFuzzer] Enable for SystemZ.
Aug 4 2020, 12:45 PM · Restricted Project, Restricted Project
kcc accepted D84913: [libFuzzer] Enable for SystemZ.

Please fix two nits, then good to go.
Thanks!

Aug 4 2020, 10:31 AM · Restricted Project, Restricted Project

Jul 31 2020

kcc added a comment to D84947: Add libFuzzer shared object build output.

Sticking just with x86_64 is possible; I actually have the code for that here, but it's a bit ugly:
https://reviews.llvm.org/differential/diff/281467/

Jul 31 2020, 9:41 AM · Restricted Project, Restricted Project