Commit Graph

29 Commits

Author SHA1 Message Date
Daniel Micay
8f38bbdee6 add configuration for self-init
This needs to be disabled for compatibility with the exploit protection
compatibility mode on GrapheneOS. hardened_malloc shouldn't be trying to
initialize itself when exploit protection compatibility mode is enabled.
This has to be handled in our Bionic integration instead.
2022-09-14 03:41:31 -04:00
Daniel Micay
b5dd9d11d9 raise class region size to 32GB for arm64 Android 2022-09-08 23:13:15 -04:00
Dmitry Muhomor
f8fec401c7 update Android.bp for Android 13 2022-08-16 07:46:44 -04:00
Daniel Micay
e2bcf4a356 stop silencing constant logical operand warning
This was resolved by 3696f071a4.
2022-01-13 14:51:22 -05:00
Daniel Micay
d470ae56a5 switch Android build to C17 from C11 2022-01-13 14:48:56 -05:00
anupritaisno1
cc0a1e1736 make hardened malloc vendor ramdisk avaiable
Signed-off-by: anupritaisno1 <www.anuprita804@gmail.com>
2021-10-08 13:43:11 -04:00
Daniel Micay
92a1e456d2 use normal class region size on x86_64 Android 2021-05-12 05:11:30 -04:00
Daniel Micay
9706f5a311 increase class region size on Android to 2GiB 2021-05-12 03:07:33 -04:00
Daniel Micay
db21ecd529 use longer default region quarantine random array 2021-03-18 06:27:46 -04:00
Daniel Micay
8d0314295e support Android's logging system for fatal_error 2020-10-19 07:51:00 -04:00
anupritaisno1
d203d6c445 Android.bp: export hardened malloc headers
Signed-off-by: anupritaisno1 <www.anuprita804@gmail.com>
2020-09-14 07:21:57 -04:00
anupritaisno1
730f148647 Android.bp: make hardened malloc ramdisk available
Signed-off-by: anupritaisno1 <www.anuprita804@gmail.com>
2020-09-13 05:14:25 -04:00
Daniel Micay
cf55ac0f6d disable annoying Clang warning from avoiding ifdef 2020-04-30 18:14:40 -04:00
Daniel Micay
fb9f5d630b use cc_library instead of cc_library_static 2019-09-07 18:00:42 -04:00
Daniel Micay
8d648e2b25 make it available in recovery for Android 10 2019-09-07 17:38:43 -04:00
Daniel Micay
2ad74515b1 enable -Werror for Android build system 2019-08-18 02:31:05 -04:00
Daniel Micay
34b6754f70 enable CONFIG_STATS by default for Android
The tiny performance cost might as well be accepted now because this
will be needed for Android Q. It's also quite possible that some apps
make use of the features based on this including malloc_info.
2019-04-10 17:12:17 -04:00
Daniel Micay
6c31f6710a support extended range of small size classes 2019-04-10 08:31:51 -04:00
Daniel Micay
ef90f404a6 add sanity check for stats option 2019-04-07 09:06:03 -04:00
Daniel Micay
e0891c8cfc implement the option of large size classes
This extends the size class scheme used for slab allocations to large
allocations. This drastically improves performance for many real world
programs using incremental realloc growth instead of using proper growth
factors. There are 4 size classes for every doubling in size, resulting
in a worst case of ~20% extra virtual memory being reserved and a huge
increase in performance for pathological cases. For example, growing
from 4MiB to 8MiB by calling realloc in increments of 32 bytes will only
need to do work beyond looking up the size 4 times instead of 1024 times
with 4096 byte granularity.
2019-04-07 08:52:17 -04:00
Daniel Micay
350d0e5fd2 add real mallinfo implementation for Android
Android Q uses the mallinfo implementation in the ART GC:

c220f98180
1575267302
2019-04-06 20:54:26 -04:00
Daniel Micay
c5e911419d add initial implementation of arenas 2019-03-25 14:59:50 -04:00
Daniel Micay
e4120913d6 only enable LABEL_MEMORY in debug builds 2019-03-20 14:25:09 -04:00
Daniel Micay
c9df70d934 add support for labelling memory regions 2019-02-13 13:34:33 -05:00
Daniel Micay
8a474b647c enable both forms of slab quarantines by default 2019-01-02 14:59:19 -05:00
Daniel Micay
ccc2a86501 rename quarantine size -> length for clarity 2019-01-02 14:17:02 -05:00
Daniel Micay
8a863ae847 use conlyflags in Android.bp when appropriate 2018-12-06 12:04:42 -05:00
Daniel Micay
830a7d338d make class_region_size configurable 2018-12-05 09:38:13 -05:00
Daniel Micay
8b0450555f add initial Android build system support 2018-12-05 07:59:35 -05:00