- User Since
- May 5 2016, 2:57 PM (158 w, 2 d)
Fri, May 17
Correcting a typo (meaningul -> meaningful)
Adding a forgotten CHECK as well.
Correcting some code constructs as suggested by Matt:
- using unique_ptr in tests;
- accounting for a potential null TransferBatch in refill;
- other corrections.
Thu, May 16
Simplify a lot of the functions prototypes by storing a pointer to the
size-class allocator in the cache, or getting the stats from the cache,
Wed, May 15
Tue, May 14
This could use a review please!
Thu, May 9
Wed, May 8
I had to backpedal on some of changes due to some errors uncovered
while testing on Fuchsia.
Working out some kinks on Fuchsia. Will update once it's ironed out.
Actually remove 2 unused masks.
Rename AllocTypeMask to OriginMask.
The HashAlgorithm global variable doesn't have to be atomic since
all alloc operations are stalled until init completes. Update things
accordingly (thanks Vitaly).
Tue, May 7
Updated to use class enums, and put some structures that uses to
be in the scudo namespace into the scudo::Chunk one, as it
makes more sense.
Mon, May 6
Addressing Matt's new comments:
- changing another %d to %zd
- changing the iterating loop to a range loop
- clang-format'ing the source
Addressing Matt's comments:
- changing some initializers to initLinkerInitialized. This also required implementing a no-op version of this function for StaticSpinMutex
- changed a %d to %zd
Thu, May 2
Wed, May 1
Tue, Apr 30
Mon, Apr 29
Addressing Vitaly's comments.
Fri, Apr 26
Thu, Apr 25
Wed, Apr 24
Correct comment & a format string.
Tue, Apr 23
Addressing Matt's comment.
Mon, Apr 22
Adding some comments, changing a couple of code constructs based on
Apr 17 2019
This splits the secondary into a H & CC file since we don't need to be
Simplify some code constructs as suggested by Matt, remove some
Rename PlatformData to MapPlatformData.
Following Vitaly's advice, we define the PlatformData structure
in a platform specific way, in the respective header files.
Apr 16 2019
Adding a death test & one for getBlockSize.
Apr 12 2019
A few higher level comments:
- do you have numbers for the overhead? code+data increase in Scudo .so, impact of VA & RSS/PSS of a "sample" process?
- the integration in Scudo should be gated by defines/cmake rules: there is currently a discrepancy between the platform supported by Scudo & GWP-Asan (Fuchsia for one and not the other) so a strong way to exclude all GWP-Asan should exist here (as far as I know there is no Fuchsia bot yet)
- was it tested on Android? As discussed, not all platforms support ELF TLS (Android added it somewhat recently, but before that it used emutls which uses malloc)
- there are some dependencies on standard C++ (std::atomic for example), and I want to make sure that this won't pull in libc++ (or other C++ runtime), the reason being that if a program is C only, it shouldn't load libc++.
Apr 9 2019
Apr 8 2019
Following up on some good catches by Vitaly:
- changing the isSeparator code around to not be in the class
- adding a related function that also checks for null
- doing some inline initialization of the FlagParser members
Addressing some review comments:
- adding tests for quoted flags
- code changes as requested
Apr 5 2019
This new version of the flags parsing departs from the one currently
implemented in sanitizer_common. We avoid dynamic memory allocations
by doing all the parsing in place, and only support boolean and integer
flags (strings would require to be duplicated to have them null
Mar 20 2019
Forgot a couple of headers in the makefile.
Mar 19 2019
Addressing Matt's comments.
Addressing Mitch's comments.
Mar 18 2019
Correct some spacing.
Following Matt's comments, I had a look at various libc implementations
and the ctype function isspace, isdigit, tolower all appear to be
safe, so use them instead of our own.
strtol & co. should also do (Windows might be using some multibyte to
widechar conversion function which would use dynamic allocation, but we
don't support Windows so we should be good).
Add a test that attempts to overflow a ScopedString with different
variations of append.
Mar 12 2019
Removing the custom strlen & strncmp in favor of the libc ones.
Changing ScopedString to aggregation instead of inheritance.