Message ID | 20230328185015.2058355-1-adhemerval.zanella@linaro.org |
---|---|
State | New |
Headers | show |
Series | Remove --disable-experimental-malloc option | expand |
Adhemerval Zanella <adhemerval.zanella@linaro.org> writes: > -'--disable-experimental-malloc' > - By default, a per-thread cache is enabled in 'malloc'. While this > - cache can be disabled on a per-application basis using tunables > - (set glibc.malloc.tcache_count to zero), this option can be used to > - remove it from the build completely. > - Ok. Also, yay :-) > CPPFLAGS-malloc-debug.c += -DUSE_TCACHE=0 > -ifeq ($(experimental-malloc),yes) > CPPFLAGS-malloc.c += -DUSE_TCACHE=1 > -else > -CPPFLAGS-malloc.c += -DUSE_TCACHE=0 > -endif In the future, we could default this inside malloc.c instead of doing this in the Makefile, but it's not important now. Ok. > diff --git a/manual/install.texi b/manual/install.texi > index 260f8a5c82..cb76fbd28f 100644 > --- a/manual/install.texi > +++ b/manual/install.texi > @@ -292,12 +292,6 @@ This option is for hackers and distributions experimenting with > independently-maintained implementations of libcrypt. It may become > the default in a future release. > > -@item --disable-experimental-malloc > -By default, a per-thread cache is enabled in @code{malloc}. While > -this cache can be disabled on a per-application basis using tunables > -(set glibc.malloc.tcache_count to zero), this option can be used to > -remove it from the build completely. > - LGTM. Reviewed-by: DJ Delorie <dj@redhat.com>
On 28/03/23 16:41, DJ Delorie wrote: > Adhemerval Zanella <adhemerval.zanella@linaro.org> writes: >> -'--disable-experimental-malloc' >> - By default, a per-thread cache is enabled in 'malloc'. While this >> - cache can be disabled on a per-application basis using tunables >> - (set glibc.malloc.tcache_count to zero), this option can be used to >> - remove it from the build completely. >> - > > Ok. Also, yay :-) > >> CPPFLAGS-malloc-debug.c += -DUSE_TCACHE=0 >> -ifeq ($(experimental-malloc),yes) >> CPPFLAGS-malloc.c += -DUSE_TCACHE=1 >> -else >> -CPPFLAGS-malloc.c += -DUSE_TCACHE=0 >> -endif > > In the future, we could default this inside malloc.c instead of doing > this in the Makefile, but it's not important now. Ok. > >> diff --git a/manual/install.texi b/manual/install.texi >> index 260f8a5c82..cb76fbd28f 100644 >> --- a/manual/install.texi >> +++ b/manual/install.texi >> @@ -292,12 +292,6 @@ This option is for hackers and distributions experimenting with >> independently-maintained implementations of libcrypt. It may become >> the default in a future release. >> >> -@item --disable-experimental-malloc >> -By default, a per-thread cache is enabled in @code{malloc}. While >> -this cache can be disabled on a per-application basis using tunables >> -(set glibc.malloc.tcache_count to zero), this option can be used to >> -remove it from the build completely. >> - > > LGTM. > Reviewed-by: DJ Delorie <dj@redhat.com> > Thanks, I will add a NEW entry on deprecated and removed features: * The --disable-experimental-malloc is no longer available. The per-thread cache can still be disable per-application using tunables (glibc.malloc.tcache_count set to zero).
diff --git a/INSTALL b/INSTALL index 970d6627e2..04388877d5 100644 --- a/INSTALL +++ b/INSTALL @@ -264,12 +264,6 @@ if 'CFLAGS' is specified it must enable optimization. For example: independently-maintained implementations of libcrypt. It may become the default in a future release. -'--disable-experimental-malloc' - By default, a per-thread cache is enabled in 'malloc'. While this - cache can be disabled on a per-application basis using tunables - (set glibc.malloc.tcache_count to zero), this option can be used to - remove it from the build completely. - '--disable-scv' Disable using 'scv' instruction for syscalls. All syscalls will use 'sc' instead, even if the kernel supports 'scv'. PowerPC only. diff --git a/config.make.in b/config.make.in index d7c416cbea..b871fa2a74 100644 --- a/config.make.in +++ b/config.make.in @@ -78,8 +78,6 @@ multi-arch = @multi_arch@ mach-interface-list = @mach_interface_list@ -experimental-malloc = @experimental_malloc@ - memory-tagging = @memory_tagging@ nss-crypt = @libc_cv_nss_crypt@ diff --git a/configure b/configure index efb891456a..162210c71f 100755 --- a/configure +++ b/configure @@ -671,7 +671,6 @@ libc_cv_static_nss_crypt libc_cv_nss_crypt build_crypt memory_tagging -experimental_malloc enable_werror all_warnings force_install @@ -776,7 +775,6 @@ enable_kernel enable_all_warnings enable_werror enable_multi_arch -enable_experimental_malloc enable_memory_tagging enable_crypt enable_nss_crypt @@ -1443,8 +1441,6 @@ Optional Features: --disable-werror do not build with -Werror --enable-multi-arch enable single DSO with optimizations for multiple architectures - --disable-experimental-malloc - disable experimental malloc features --enable-memory-tagging enable memory tagging if supported by the architecture [default=no] --disable-crypt do not build nor install the passphrase hashing @@ -3468,15 +3464,6 @@ else fi -# Check whether --enable-experimental-malloc was given. -if test "${enable_experimental_malloc+set}" = set; then : - enableval=$enable_experimental_malloc; experimental_malloc=$enableval -else - experimental_malloc=yes -fi - - - # Check whether --enable-memory-tagging was given. if test "${enable_memory_tagging+set}" = set; then : enableval=$enable_memory_tagging; memory_tagging=$enableval diff --git a/configure.ac b/configure.ac index 011844a3d4..f1abeda9aa 100644 --- a/configure.ac +++ b/configure.ac @@ -307,13 +307,6 @@ AC_ARG_ENABLE([multi-arch], [multi_arch=$enableval], [multi_arch=default]) -AC_ARG_ENABLE([experimental-malloc], - AS_HELP_STRING([--disable-experimental-malloc], - [disable experimental malloc features]), - [experimental_malloc=$enableval], - [experimental_malloc=yes]) -AC_SUBST(experimental_malloc) - AC_ARG_ENABLE([memory-tagging], AS_HELP_STRING([--enable-memory-tagging], [enable memory tagging if supported by the architecture @<:@default=no@:>@]), diff --git a/malloc/Makefile b/malloc/Makefile index dfb51d344c..f685fc6e6c 100644 --- a/malloc/Makefile +++ b/malloc/Makefile @@ -286,11 +286,7 @@ tst-malloc-usable-tunables-ENV = GLIBC_TUNABLES=glibc.malloc.check=3 \ tst-mxfast-ENV = GLIBC_TUNABLES=glibc.malloc.tcache_count=0:glibc.malloc.mxfast=0 CPPFLAGS-malloc-debug.c += -DUSE_TCACHE=0 -ifeq ($(experimental-malloc),yes) CPPFLAGS-malloc.c += -DUSE_TCACHE=1 -else -CPPFLAGS-malloc.c += -DUSE_TCACHE=0 -endif # Uncomment this for test releases. For public releases it is too expensive. #CPPFLAGS-malloc.o += -DMALLOC_DEBUG=1 diff --git a/manual/install.texi b/manual/install.texi index 260f8a5c82..cb76fbd28f 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -292,12 +292,6 @@ This option is for hackers and distributions experimenting with independently-maintained implementations of libcrypt. It may become the default in a future release. -@item --disable-experimental-malloc -By default, a per-thread cache is enabled in @code{malloc}. While -this cache can be disabled on a per-application basis using tunables -(set glibc.malloc.tcache_count to zero), this option can be used to -remove it from the build completely. - @item --disable-scv Disable using @code{scv} instruction for syscalls. All syscalls will use @code{sc} instead, even if the kernel supports @code{scv}. PowerPC only. diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py index 29c10c2916..9c5c77f423 100755 --- a/scripts/build-many-glibcs.py +++ b/scripts/build-many-glibcs.py @@ -447,7 +447,6 @@ class Context(object): '--disable-mathvec', '--disable-tunables', '--disable-crypt', - '--disable-experimental-malloc', '--disable-build-nscd', '--disable-nscd']}, {'variant': 'no-pie',