about summary refs log tree commit diff
path: root/pkgs/shells/bash
diff options
context:
space:
mode:
authorVladimír Čunát <v@cunat.cz>2023-09-16 15:42:10 +0200
committerVladimír Čunát <v@cunat.cz>2023-09-16 15:42:10 +0200
commit223b83ca54ac118f7769694b09af3547d5c39224 (patch)
treed20caa96babe013901b73ecfc88b6cd05f2b2752 /pkgs/shells/bash
parent3d5e8ad587be72d563656a122ecd81b4b5cdfb46 (diff)
parent8708ae0e37084d44dfc2d89e5d14731382f82236 (diff)
Merge #250128: bash: disable bash-malloc everywhere
...into staging
Diffstat (limited to 'pkgs/shells/bash')
-rw-r--r--pkgs/shells/bash/5.nix7
1 files changed, 6 insertions, 1 deletions
diff --git a/pkgs/shells/bash/5.nix b/pkgs/shells/bash/5.nix
index 6b126390c9f6e..3beb54b908e20 100644
--- a/pkgs/shells/bash/5.nix
+++ b/pkgs/shells/bash/5.nix
@@ -68,6 +68,12 @@ stdenv.mkDerivation rec {
   ];
 
   configureFlags = [
+    # At least on Linux bash memory allocator has pathological performance
+    # in scenarios involving use of larger memory:
+    #   https://lists.gnu.org/archive/html/bug-bash/2023-08/msg00052.html
+    # Various distributions default to system allocator. Let's nixpkgs
+    # do the same.
+    "--without-bash-malloc"
     (if interactive then "--with-installed-readline" else "--disable-readline")
   ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     "bash_cv_job_control_missing=nomissing"
@@ -81,7 +87,6 @@ stdenv.mkDerivation rec {
     "bash_cv_dev_fd=standard"
     "bash_cv_termcap_lib=libncurses"
   ] ++ lib.optionals (stdenv.hostPlatform.libc == "musl") [
-    "--without-bash-malloc"
     "--disable-nls"
   ];