| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
is negated. (TLS_SETUP_GS_SEGMENT): Likewise. (TLS_INIT_TP): Likewise.
|
|
|
|
| |
* include/unistd.h: Don't hide _exit.
|
|
|
|
|
|
|
|
|
|
| |
* elf/rtld.c (_dl_start): Pass extra argument 1 to TLS_INIT_TP.
(dl_main): Padd extra argument 0 to TLS_INIT_TP.
* sysdeps/generic/libc-tls.c (__libc_setup_tls): Pass extra
argument 1 to TLS_INIT_TP.
* sysdeps/generic/tls.h (TLS_INIT_TP): Describe new parameter.
* locale/loadarchive.c (_nl_load_locale_from_archive): Store strdup of
|
|
|
|
| |
* sysdeps/generic/dl-tls.c (allocate_dtv): Optimize a bit.
|
|
|
|
|
|
|
| |
2002-08-19 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/useldt.h (DO_SET_THREAD_AREA): Use correct shift when
computing index from %gs value.
|
| |
|
|
|
|
| |
register value from entry number properly.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
optimally conditional on [__PIC__].
(TLS_DO_SET_THREAD_AREA): New macro, implement inline syscall
without touching errno, and use latest modify_ldt-like interface.
(TLS_SETUP_GS_SEGMENT): Use that instead of INLINE_SYSCALL.
* sysdeps/i386/useldt.h (DO_MODIFY_LDT): Set %gs in this macro.
(DO_SET_THREAD_AREA): New macro, uses current syscall interface with
existing %gs value as the segment to set.
(INIT_THREAD_SELF): Rewritten using those. Use set_thread_area only
under [HAVE_TLS_SUPPORT] so we can rely on the initialization done
by the first thread's early TLS setup.
|
|
|
|
|
| |
* locale/loadarchive.c (_nl_load_locale_from_archive): Braino fix
in change before last: MAX -> MIN.
|
| |
|
|
|
|
|
|
|
| |
of the TLS macros, otherwise the compiler might not have initialized
the PIC register yet when we use the PLT via asm.
* elf/tst-tlsmod3.c (in_dso2): Likewise.
* elf/tst-tlsmod2.c (in_dso): Likewise.
|
|
|
|
|
|
| |
2002-08-08 Ulrich Drepper <drepper@redhat.com>
* gmon/gmon.c (write_gmon): Use O_NOFOLLOW in open calls if available.
|
|
|
|
|
|
|
|
| |
* stdlib/isomac.c (get_null_defines): Treat NOT_IN_libc special.
It is known to be defined.
* include/string.h: Define index and rindex only if _ISOMAC is not
defined.
|
|
|
|
| |
(__pthread_initialize_manager): Use it to initialize p_report_events of initial thread. [TLS]: Store pointer to descriptor of manager in __pthread_handles.
|
|
|
|
| |
an "m" constraint to the asm so the compiler knows LDT_ENTRY was used.
|
|
|
|
|
| |
* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): Add an extra argument with
an "m" constraint to the asm so the compiler knows LDT_ENTRY was used.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
setpriority.
* sysdeps/unix/sysv/linux/getpriority.c: Add libc_hidden_def.
* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
* sysdeps/mach/hurd/setpriority.c: Likewise.
* sysdeps/mach/hurd/getpriority.c: Likewise.
* sysdeps/generic/setpriority.c: Likewise.
* sysdeps/generic/getpriority.c: Likewise.
* include/mcheck.h: Use libc_hidden_proto for mcheck_check_all.
* malloc/mcheck.c: Add libc_hidden_def.
* include/search.h: Use libc_hidden_proto for hcreate_r, hdestroy_r.
* misc/hsearch_r.c: Add libc_hidden_def.
* include/fnmatch.h: Use libc_hidden_proto for fnmatch.
* posix/fnmatch.c: Add libc_hidden_weak.
|
|
|
|
|
|
|
|
|
| |
* sysdeps/pthread/bits/libc-tsd.h (enum __libc_tsd_key_t):
Add _LIBC_TSD_KEY_LOCALE.
* manager.c (pthread_start_thread) [!(USE_TLS && HAVE___THREAD)]:
Call __uselocale to initialize our per-thread locale pointer to
the global one.
* pthread.c (__pthread_initialize_minimal): Likewise.
|
|
|
|
|
|
| |
2002-08-03 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/libc-tsd.h: Add _LIBC_TSD_KEY_LOCALE.
|
| |
|
| |
|
|
|
|
| |
* sysdeps/i386/tls.h (TLS_DO_SET_THREAD_AREA): Add missing \s.
|
|
|
|
|
| |
* pthread.c: Declare _errno, _h_errno, and _res unless we use TLS
internally.
|
| |
|
|
|
|
|
|
|
| |
2002-08-02 Ulrich Drepper <drepper@redhat.com>
* cancel.c (__pthread_perform_cleanup) [USE_TLS && HAVE___THREAD]:
Don't use p_libc_specific element in thread descriptor.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[! _LIBC_REENTRANT] (_res): Move this conditional decl to ...
* include/resolv.h: ... here.
[USE_TLS && HAVE___THREAD] (_res): #undef it and declare
as a __thread variable.
* resolv/res_libc.c [USE_TLS && HAVE___THREAD] (_res): Define it as
a __thread variable instead of a global.
* resolv/res_data.c [_LIBC]: Don't #undef _res.
* include/errno.h: Include <tls.h> to make sure USE_TLS defined by the
time we test it.
* intl/loadmsgcat.c [__GNUC__]: #undef alloca before defining it.
* malloc/malloc.c [_LIBC]: Include <string.h> instead of using local
decls of memset and memcpy.
* sysdeps/generic/sysdep.h (END): Conditionalize on [__ASSEMBLER__].
* sysdeps/unix/sysv/linux/i386/sysdep.h (L): Likewise.
* elf/dl-load.c (_dl_map_object_from_fd): Comment fix.
* sysdeps/generic/bits/libc-tsd.h [USE_TLS && HAVE___THREAD]
(__libc_tsd_define): Define using __thread.
* sunrpc/rpc_thread.c: Use __libc_tsd_define.
(__rpc_thread_variables): Use __libc_tsd_get.
(__rpc_thread_destroy): Use __libc_tsd_get instead of calling
__rpc_thread_variables, which might allocate what we're about to free.
* inet/herrno.c [USE_TLS && HAVE___THREAD] (h_errno): Define as a
thread-local variable.
* resolv/netdb.h (h_errno): Define macro unconditionally.
[_LIBC] (__set_h_errno): Macro moved to ...
* include/netdb.h: ... here.
[USE_TLS && HAVE___THREAD] (h_errno): Declare __thread variable.
[USE_TLS && HAVE___THREAD] (__set_h_errno): Define using that.
[! _LIBC_REENTRANT]: #undef h_errno here.
* include/errno.h: Protect from multiple inclusion.
* misc/sys/select.h (__NFDBITS, __FDELT, __FDMASK): #undef these
before defining them, since Linux's <linux/posix_types.h> might have
defined them.
2002-08-01 Roland McGrath <roland@redhat.com>
2002-07-31 Roland McGrath <roland@redhat.com>
2002-07-31 Roland McGrath <roland@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[USE_TLS && HAVE___THREAD]: Just include the sysdeps/generic file,
which does the right thing when __thread support is available.
* descr.h (struct _pthread_descr_struct) [USE_TLS && HAVE___THREAD]:
Omit `p_libc_specific', `p_errnop', `p_errno', `p_h_errnop',
`p_h_errno', `p_resp', and `p_res' members.
* pthread.c (__pthread_initialize_minimal) [USE_TLS && HAVE___THREAD]:
Don't initialize `p_errnop' and `p_h_errnop' members.
(__pthread_reset_main_thread): Likewise.
(__pthread_initialize_manager): Likewise.
* manager.c (__pthread_manager, pthread_handle_create): Likewise.
* pthread.c (pthread_initialize) [USE_TLS && HAVE___THREAD]:
Don't initialize `p_resp' member.
(__pthread_reset_main_thread): Likewise.
* manager.c (pthread_handle_create): Likewise.
* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
* errno.c [USE_TLS && HAVE___THREAD]
(__h_errno_location, __res_state): Don't define these at all.
* sysdeps/i386/tls.h (INSTALL_DTV): Add parens around arguments!
(INSTALL_NEW_DTV, GET_DTV): Likewise.
* sysdeps/sh/tls.h (INSTALL_DTV, INSTALL_NEW_DTV, GET_DTV): Likewise.
* weaks.c: Don't include <errno.h> here.
2002-08-01 Roland McGrath <roland@redhat.com>
* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
TLS_INIT_TP.
(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
(TLS_INIT_TP): Use that.
|
|
|
|
|
|
|
|
| |
* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
TLS_INIT_TP.
(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
(TLS_INIT_TP): Use that.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-08-02 Jakub Jelinek <jakub@redhat.com>
* malloc/malloc.c (public_cALLOc): Check for overflow on
multiplication.
* sunrpc/xdr_array.c (xdr_array): Likewise.
* sunrpc/rpc/types.h (mem_free): Add comment.
Patch by Solar Designer <solar@openwall.com>.
2002-08-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h
(__ASSUME_SET_THREAD_AREA_SYSCALL): Define.
* libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr):
* libio/Makefile (headers): Add bits/sys_errlist.h to the list.
* sysdeps/generic/bits/sys_errlist.h: New file. This does *not*
declare sys_errlist and sys_nerr.
* sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file. Does
|
| |
|
|
|
|
| |
sys_thread_area syscall instead if available. (FREE_THREAD): Avoid modify_ldt if using GDT.
|
|
|
|
|
|
| |
2002-07-28 Ulrich Drepper <drepper@redhat.com>
* po/fi.po: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-07-24 Ulrich Drepper <drepper@redhat.com>
* libio/fileops.c (_IO_file_seekoff_mmap): Do use fp->_offset to
compute current position.
* stdio-common/tst-fseek.c (main): Improve error messages.
* libio/tst-freopen.c (main): Remove unused variable.
* libio/fileops.c (_IO_file_seekoff_mmap): Set fp->_offset after
succesful seek call. Simply error checking.
2002-07-25 Jakub Jelinek <jakub@redhat.com>
* config.h.in: Use __ASSEMBLER__ test macro not ASSEMBLER.
* sysdeps/ia64/fpu/libm_support.h: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-07-23 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/libc-tls.c: New file.
* csu/Makefile (routines): Add libc-tls.
(static-only-routines): Add libc-tls.
* elf/dl-support.c (_dl_phdr): New variable.
(_dl_phnum): New variable.
(_dl_aux_init): Initialize _dl_phdr and _dl_phnum from aux vector.
* sysdeps/generic/libc-start.c (__libc_start_main): Reorganize code
for !SHARED. First look through auxiliary vector. If TLS always
call __pthread_initialize_minimal.
* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Make sure size argument
in mmap call is never zero.
|
|
|
|
|
|
| |
2002-07-22 Ulrich Drepper <drepper@redhat.com>
* Makefile: Actually creat tst-signal.out file when running the test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-07-19 Ulrich Drepper <drepper@redhat.com>
* configure.in: Add test for __thread support in compiler.
* config.h.in: Add HAVE___THREAD.
* Makefile (headers): Remove errno.h, sys/errno.h, and bits/errno.h.
* include/sys/errno.h: Moved to...
* stdlib/sys/errno.h: ...here. New file.
* stdlib/errno.h: New file. Moved from...
* include/errno.h: ...here. Changed into an internal header defining
libc-local things like __set_errno.
* stdlib/Makefile (headers): Add errno.h, sys/errno.h, and
bits/errno.h.
* elf/dl-minimal.c: Include <tls.h>. Define errno as thread-local
variable if USE_TLS && HAVE___THREAD. Don't define __errno_location
either.
* elf/rtld.c (_dl_start): Add code to initialize TLS for ld.so
from...
(_dl_start_final): ...here. Add code to initialize tls elements from
bootstrap_map.
* sysdeps/generic/errno-loc.c: Define errno as thread-local variable
if USE_TLS && HAVE___THREAD.
* sysdeps/generic/bits/errno.h: Remove __set_errno definition.
* sysdeps/mach/hurd/bits/errno.h: Likewise.
* sysdeps/standalone/arm/bits/errno.h: Likewise.
* sysdeps/standalone/bits/errno.h: Likewise.
* sysdeps/unix/bsd/bsd4.4/bits/errno.h: Likewise.
* sysdeps/unix/sysv/aix/bits/errno.h: Likewise.
* sysdeps/unix/sysv/hpux/bits/errno.h: Likewise.
* sysdeps/unix/sysv/linux/bits/errno.h: Likewise.
* sysdeps/unix/sysv/linux/hppa/bits/errno.h: Likewise.
* sysdeps/unix/sysv/linux/mips/bits/errno.h: Likewise.
* sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h: Likewise.
* sysdeps/i386/dl-machine.c (elf_machine_rel) [RTLD_BOOTSTRAP]: Don't
use GL(dl_rtld_map), use map parameter.
* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep.S: Define errno in .tbss if
USE_TLS && HAVE___THREAD.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Unify SETUP_PIC_REG
definitions. If USE_TLS && HAVE___THREAD store errooor value using
TLS code sequence.
* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/getcwd.c: No real need to restore errno.
* sysdeps/unix/sysv/linux/grantpt.c: Likewise.
* sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise.
* sysdeps/unix/sysv/linux/msgctl.c: Likewise.
* sysdeps/unix/sysv/linux/readv.c: Likewise.
* sysdeps/unix/sysv/linux/writev.c: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-07-02 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/atomicity.h: Don't include <sgidefs.h>. Always
use ll/sc.
* sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
* sysdeps/unix/sysv/linux/configure.in: Set arch_minimum_kernel
to 2.4.0 for mips.
TLS fail if USE_TLS is not defined.
|
|
|
|
|
|
|
| |
2002-07-14 Ulrich Drepper <drepper@redhat.com>
* manager.c (pthread_handle_create): Initialize self-reference in
descriptor.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* malloc/hooks.c (realloc_check): If mremap succeeds actually use
the result.
* sysdeps/i386/i486/bits/string.h: Add early clobber for "a"
output parameter. Reported by Denis Zaitsev <zzz@cd-club.ru>.
* Versions.def (libthread_db): Add GLIBC_2.3.
2002-07-09 Jakub Jelinek <jakub@redhat.com>
* libio/freopen.c (freopen): Reset jump tables, use mmap stdio for the
new stream if possible.
* libio/freopen64.c (freopen64): Likewise.
* libio/Makefile (tests): Add tst-freopen.
* libio/tst-freopen.c: New file.
2002-07-03 Jakub Jelinek <jakub@redhat.com>
* libio/stdio.h (obstack_printf): Add format attribute.
(obstack_vprintf): Likewise.
2002-07-04 Jakub Jelinek <jakub@redhat.com>
* posix/regex_internal.h (re_token_t): Shrink the structure to 8
resp. 16 bytes on 32-bit resp. 64-bit platforms.
(re_charset_t, re_string_t): Reorder structure members for 64-bit
architectures.
2002-07-04 Jakub Jelinek <jakub@redhat.com>
* posix/regcomp.c (re_compile_internal): Move clearing of dfa...
(init_dfa): ...here.
2002-07-05 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (parse_sub_exp): Add nodes OP_OPEN_SUBEXP and
OP_CLOSE_SUBEXP at both ends of sub expressions instead of SUBEXP
nodes in parse trees.
(calc_first): Fix the Definition of `firsts' of OP_OPEN_SUBEXP
and OP_CLOSE_SUBEXP, and remove the definition of SUBEXP.
(calc_epsdest): Treat OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP as the
nodes which can epsilon transit.
* posix/regex_internal.h: Add OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP
to IS_EPSILON_NODE macro.
* posix/regexec.c (update_regs): New function to update registers
by refering OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP nodes.
(proceed_next_node): Use the entities of the nodes to determine
whether the node can transit to.
(set_regs): Use update_regs function to update registers.
2002-07-03 Jakub Jelinek <jakub@redhat.com>
* posix/bug-regex4.c (main): Remove duplicate setlocale.
* posix/bug-regex6.c: New file.
* posix/Makefile (tests): Add bug-regex6.
(bug-regex6-ENV): Set LOCPATH.
2002-07-10 Ulrich Drepper <drepper@redhat.com>
|
|
|
|
|
| |
* bug-sleep.c: New file.
* Makefile (tests): Add bug-sleep.
|
|
|
|
|
|
|
| |
2002-07-10 Ulrich Drepper <drepper@redhat.com>
* wrapsyscall.c: Add __nanosleep alias.
* Versions (GLIBC_2.2.6): Add __nanosleep.
|
|
|
|
|
|
|
| |
2002-06-19 Steven Munroe <sjmunroe@vnet.ibm.com>
* Examples/ex9.c (main): Use list of children and join them.
(thread): Do not call exit.
|
|
|
|
|
|
|
|
|
|
| |
2002-06-20 Ulrich Drepper <drepper@redhat.com>
* spinlock.c (wait_node_alloc): We cannot use compare-and-exchange.
Unconditionally use the code using spinlock. Use __pthread_release
to free a spinlock.
(wait_node_free): Likewise.
(__pthread_acquire, __pthread_release): Unconditionally define.
|
|
|
|
|
|
| |
2002-06-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/pt-machine.h (MEMORY_BARRIER): Fix typo.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-05-21 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regex.c: Define `inline' as a macro into nothing for the
compilers which lack the keyword.
* posix/regex.h: (RE_SYNTAX_GNU_AWK): Remove RE_CONTEXT_INVALID_OPS
for the compatibility of gawk.
* posix/regcomp.c: Add fake implementation of isblank() for the
environments which lack the function.
Don't use free_charset() in case of non-i18n envs.
(build_range_exp): Don't use i18n related code in case of non-i18n
envs.
(build_collating_symbol): Likewise.
(build_equiv_class): Likewise.
(build_charclass): Likewise.
(re_compile_fastmap_iter): Likewise.
(parse_bracket_exp): Likewise.
(build_word_op): Likewise.
(regfree): Don't use free_charset() in case of non-i18n envs.
* posix/regex_internal.h: Remove COMPLEX_BRACKET from
re_token_type_t in case of non-i18n envs.
Don't define re_charset_t in case of non-i18n envs.
Change the type of wcs of re_string_t from wchar_t to wint_t,
since we store also WEOF.
* posix/regex_internal.c: (re_string_realloc_buffers): Change
the type of wcs of re_string_t from wchar_t to wint_t.
(re_string_reconstruct): Likewise.
(create_ci_newstate): Don't use i18n related code in case of
non-i18n envs.
(create_cd_newstate): Likewise.
2002-05-24 Ulrich Drepper <drepper@redhat.com>
* iconv/loop.c: Fix typo.
2002-05-23 Jakub Jelinek <jakub@redhat.com>
* inet/ether_line.c (ether_line): Fix a typo causing only
lower 4 bits of each ethernet address byte being assigned.
Don't modify what line points to.
* inet/tst-ether_aton.c (main): Add ether_line tests.
2002-05-23 Marcus Brinkmann <marcus@gnu.org>
* manual/filesys.texi: Don't make readlink example leak memory
when readlink fails.
|
|
|
|
|
|
|
|
|
|
| |
2002-05-21 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread.h (pthread_create): Rename first
parameter.
(pthread_cancel): Likewise.
* internals.h (__pthread_create_2_1): Likewise.
* sysdeps/unix/sysv/linux/bits/sigthread.h (pthread_kill): Likewise.
|
|
|
|
|
|
|
|
|
|
|
| |
2002-05-16 Bruno Haible <bruno@clisp.org>
* MakeTAGS (libc.pot): Don't sort the output.
* po/header.pot: Update to match xgettext 0.11 output.
2002-05-16 Bruno Haible <bruno@clisp.org>
* MakeTAGS (subdirs): Remove duplicates.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2002-05-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/Makefile: Add ia64libgcc in csu subdir.
* sysdeps/ia64/Versions (__divtf3, __divdf3, __divsf3, __divdi3,
__moddi3, __udivdi3, __umoddi3, __multi3): Export at GLIBC_2.0.
* sysdeps/ia64/ia64libgcc.S: New file.
2002-05-02 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/dl-tls.c (oom): Implement using _dl_fatal_printf.
* malloc/memusage.c: Distinguish anonymous mmap.
|