Reapply "various: fix Scudo allocator due to LLVM update" (#444670)
This commit is contained in:
@@ -52,7 +52,7 @@ let
|
|||||||
or (throw "scudo not supported on ${pkgs.stdenv.hostPlatform.system}");
|
or (throw "scudo not supported on ${pkgs.stdenv.hostPlatform.system}");
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
libPath = "${pkgs.llvmPackages.compiler-rt}/lib/linux/libclang_rt.scudo-${systemPlatform}.so";
|
libPath = "${pkgs.llvmPackages.compiler-rt}/lib/linux/libclang_rt.scudo_standalone-${systemPlatform}.so";
|
||||||
description = ''
|
description = ''
|
||||||
A user-mode allocator based on LLVM Sanitizer’s CombinedAllocator,
|
A user-mode allocator based on LLVM Sanitizer’s CombinedAllocator,
|
||||||
which aims at providing additional mitigations against heap based
|
which aims at providing additional mitigations against heap based
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ in
|
|||||||
nix.settings.allowed-users = mkDefault [ "@users" ];
|
nix.settings.allowed-users = mkDefault [ "@users" ];
|
||||||
|
|
||||||
environment.memoryAllocator.provider = mkDefault "scudo";
|
environment.memoryAllocator.provider = mkDefault "scudo";
|
||||||
environment.variables.SCUDO_OPTIONS = mkDefault "ZeroContents=1";
|
environment.variables.SCUDO_OPTIONS = mkDefault "zero_contents=true";
|
||||||
|
|
||||||
security.lockKernelModules = mkDefault true;
|
security.lockKernelModules = mkDefault true;
|
||||||
|
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
env = {
|
env = {
|
||||||
NIX_CFLAGS_COMPILE = toString (
|
NIX_CFLAGS_COMPILE = toString (
|
||||||
[
|
[
|
||||||
"-DSCUDO_DEFAULT_OPTIONS=DeleteSizeMismatch=0:DeallocationTypeMismatch=0"
|
"-DSCUDO_DEFAULT_OPTIONS=delete_size_mismatch=false:dealloc_type_mismatch=false"
|
||||||
]
|
]
|
||||||
++ lib.optionals (!haveLibc) [
|
++ lib.optionals (!haveLibc) [
|
||||||
# The compiler got stricter about this, and there is a usellvm patch below
|
# The compiler got stricter about this, and there is a usellvm patch below
|
||||||
|
|||||||
Reference in New Issue
Block a user