glibc:fw/bug21242

Last commit made on 2019-04-15
Get this branch:
git clone -b fw/bug21242 https://git.launchpad.net/glibc

Branch merges

Branch information

Name:
fw/bug21242
Repository:
lp:glibc

Recent commits

59c45ee... by Florian Weimer on 2018-06-06

ld.so: Introduce delayed relocation processing

This makes it possible to use IFUNC resolvers which depend
on relocations themselves, as long as these reloctions do
not depend on IFUNCs.

So far, delayed relocation processing is only implemented for
x86-64.

ed8938f... by Florian Weimer on 2018-06-05

ld.so: Defer applying RELRO protection

This is a prerequisite of a future change which applies additional
cross-object relocations after _dl_relocate_object has been called.

e3f454b... by Florian Weimer on 2019-04-11

nss_dns: Do not replace root domain with empty string

The purpose of the bp[0] == '.' check is unclear. Only the root domain
starts with '.'. The empty string is accepted as a domain name in many
places, denoting the root, but using it implicitly is confusing.

32d85c1... by Florian Weimer on 2019-04-11

alloc_buffer: Return unqualified pointer type in alloc_buffer_next

alloc_buffer_next is useful for peeking to the remaining part of the
buffer and update it, with subsequent allocation (once the length
is known) using alloc_buffer_alloc_bytes. This is not as robust
as the other interfaces, but it allows using alloc_buffer with
string-writing interfaces such as snprintf and ns_name_ntop.

221710a... by Florian Weimer on 2019-04-11

Add missing ChangeLog entry for commit 10dd69e9a00

c166468... by Florian Weimer on 2019-04-11

Add more bug numbers to historic ChangeLog entries

10dd69e... by TAMUKI Shoichi <email address hidden> on 2019-04-11

Add missing percent sign to conversion specifier

7e3496c... by Florian Weimer on 2019-04-10

Add bug number to historic ChangeLog entry

e621246... by Carlos-0 on 2019-04-08

malloc: Set and reset all hooks for tracing (Bug 16573)

If an error occurs during the tracing operation, particularly during a
call to lock_and_info() which calls _dl_addr, we may end up calling back
into the malloc-subsystem and relock the loader lock and deadlock. For
all intents and purposes the call to _dl_addr can call any of the malloc
family API functions and so we should disable all tracing before calling
such loader functions. This is similar to the strategy that the new
malloc tracer takes when calling the real malloc, namely that all
tracing ceases at the boundary to the real function and any faults at
that point are the purvue of the library (though the new tracer does
this on a per-thread basis in an MT-safe fashion). Since the new tracer
and the hook deprecation are not yet complete we must fix these issues
where we can.

Tested on x86_64 with no regressions.

Co-authored-by: Kwok Cheung Yeung <email address hidden>
Reviewed-by: DJ Delorie <email address hidden>

648279f... by Wilco Dijkstra <email address hidden> on 2019-04-09

Improve string benchtests

Replace slow byte-oriented tests in several string benchmarks with the
generic implementations from the string/ directory so the comparisons
are more realistic and useful.

 * benchtests/bench-stpcpy.c (SIMPLE_STPCPY): Remove function.
 (generic_stpcpy): New function.
 * benchtests/bench-stpncpy.c (SIMPLE_STPNCPY): Remove function.
 (generic_stpncpy): New function.
 * benchtests/bench-strcat.c (SIMPLE_STRCAT): Remove function.
 (generic_strcat): New function.
 * benchtests/bench-strcpy.c (SIMPLE_STRCPY): Remove function.
 (generic_strcpy): New function.
 * benchtests/bench-strncat.c (SIMPLE_STRNCAT): Remove function.
 (STUPID_STRNCAT): Remove function.
 (generic_strncat): New function.
 * benchtests/bench-strncpy.c (SIMPLE_STRNCPY): Remove function.
 (STUPID_STRNCPY): Remove function.
 (generic_strncpy): New function.
 * benchtests/bench-strnlen.c (SIMPLE_STRNLEN): Remove function.
 (generic_strnlen): New function.
 (memchr_strnlen): New function.
 * benchtests/bench-strlen.c (generic_strlen): Define for WIDE.
 (memchr_strlen): Likewise.