snmalloc
snmalloc copied to clipboard
Message passing based allocator
Although, double frees are generally caught on large allocs. This is done very late in the process after many operations more operations have occurred. This change brings that check much...
Signed-off-by: SchrodingerZhu Just to show the portability of snmalloc to `loongarch`. https://loongson.github.io/LoongArch-Documentation/LoongArch-Vol1-EN ``` $/home/schrodinger/Documents/qemu/build/qemu-loongarch64 -L $LA_PATH/../target/usr/ perf-singlethread-1 Count: 32768, Size: 16, ZeroMem: 0, Write: 0: 25995159 ns Count: 32768, Size:...
This current draft duplicates way too much code and will have to be revised. Essential all it does is provide a custom SlabMetadata class that extends FrontendSlabMetadata with a chunk_ptr...
in allocations before returning to user. This is important on CHERI to avoid leaking capabilities and may also reduce the attack surface on other architecutres. This includes: Freelist pointers. RBTree...
More Lincoln Logs-style work, mostly: assemble existing pieces differently for a `StrictProvenance` / CHERI-aware `memcpy`. As documented, there are two constraints in tension: - We must use capability load and...
Pull a part the locking from the static range. This enables locking to be added to a range directly, and does not require it to be made static. This is...
On twitter @richfelker has said we should consider providing `__builtin_dynamic_object_size` as a more comprehensive way to provide [guarded memcpy](https://github.com/microsoft/snmalloc/blob/main/docs/security/GuardedMemcpy.md) like features: > I'd love if there were some clean agreed...
I am not seeing how to use the new hardening features when including snmalloc as a header-only library on Windows. There doesn't seem to be any #define or similar mentioned...