This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCHv2 0/2] Tunables for glibc
- From: Andrew Pinski <pinskia at gmail dot com>
- To: Siddhesh Poyarekar <sid at reserved-bit dot com>
- Cc: GNU C Library <libc-alpha at sourceware dot org>, Roland McGrath <roland at hack dot frob dot com>, "Carlos O'Donell" <carlos at redhat dot com>, Andi Kleen <andi at firstfloor dot org>, Tulio Magno Quites Machado Filho <tuliom at linux dot vnet dot ibm dot com>, "Paul E. Murphy" <murphyp at linux dot vnet dot ibm dot com>, munroesj at linux dot vnet dot ibm dot com
- Date: Wed, 11 May 2016 19:21:18 -0700
- Subject: Re: [PATCHv2 0/2] Tunables for glibc
- Authentication-results: sourceware.org; auth=none
- References: <20160116185503 dot GA17754 at devel dot intra dot reserved-bit dot com>
On Sat, Jan 16, 2016 at 10:55 AM, Siddhesh Poyarekar
<sid@reserved-bit.com> wrote:
> Hi,
>
> Updated patches follow. The main changes from the first version are:
>
> 1. Added a new function t_memcpy to avoid calling memcpy and triggering its
> IFUNC.
> 2. Replace t_strncpy with t_strcpy
> 3. Put the tunables functions in the glibc internal namespace
> 4. End tunables-list.h with a newline
> 5. Added comment about __tunables_init calls being synchronized by the
> dl_load_lock
What is status about this feature? I have a case where I want to have
a tunable parameter for pthread_mutex_lock where we spin a little bit
in userspace before calling futex as people use pthread_mutex's as
normal locks and in the case of huge number of cores we should not
call futex if the time spent inside the lock is small.
Thanks,
Andrew
>
> Siddhesh
>
> Siddhesh Poyarekar (2):
> Add framework for tunables
> Initialize tunable list with the GLIBC_TUNABLES environment variable
>
> INSTALL | 6 ++
> Makeconfig | 9 ++
> config.h.in | 3 +
> config.make.in | 1 +
> configure | 16 +++
> configure.ac | 10 ++
> csu/init-first.c | 7 ++
> csu/libc-start.c | 4 +-
> malloc/arena.c | 86 ++++++++++++++++
> manual/install.texi | 5 +
> nptl/nptl-init.c | 9 +-
> scripts/gen-tunables.awk | 84 +++++++++++++++
> tunables/Makefile | 33 ++++++
> tunables/README | 93 +++++++++++++++++
> tunables/Versions | 8 ++
> tunables/tunable-list.h | 32 ++++++
> tunables/tunables.c | 263 +++++++++++++++++++++++++++++++++++++++++++++++
> tunables/tunables.h | 110 ++++++++++++++++++++
> tunables/tunables.list | 12 +++
> 19 files changed, 788 insertions(+), 3 deletions(-)
> create mode 100644 scripts/gen-tunables.awk
> create mode 100644 tunables/Makefile
> create mode 100644 tunables/README
> create mode 100644 tunables/Versions
> create mode 100644 tunables/tunable-list.h
> create mode 100644 tunables/tunables.c
> create mode 100644 tunables/tunables.h
> create mode 100644 tunables/tunables.list
>
> --
> 2.5.0
>