A heads up on this commit: if you're following -current and using any
perl modules that pull in threaded libraries from packages, such as
mysql/mariadb integration via DBD::mysql, then you may want to wait
the day or so until the ports package builds have caught up with the
change.  The perl in base built against libpthread.19.0 cannot load
the mysql.so shared object linked against libpthread.18.1

Philip Guenther

---------- Forwarded message ----------
From: Philip Guenther <guent...@cvs.openbsd.org>
Date: Mon, Apr 6, 2015 at 6:27 PM
Subject: CVS: cvs.openbsd.org: src
To: source-chan...@cvs.openbsd.org


CVSROOT:        /cvs
Module name:    src
Changes by:     guent...@cvs.openbsd.org        2015/04/06 19:27:07

Modified files:
        lib/csu        : crtbegin.c crtbeginS.c
        lib/libc       : shlib_version
        lib/libc/arch/alpha: SYS.h
        lib/libc/arch/alpha/sys: fork.S
        lib/libc/arch/amd64: SYS.h
        lib/libc/arch/amd64/sys: fork.S
        lib/libc/arch/arm: SYS.h
        lib/libc/arch/arm/sys: fork.S
        lib/libc/arch/hppa: SYS.h
        lib/libc/arch/hppa/sys: fork.S
        lib/libc/arch/hppa64: SYS.h
        lib/libc/arch/hppa64/sys: fork.S
        lib/libc/arch/i386: SYS.h
        lib/libc/arch/i386/sys: fork.S
        lib/libc/arch/m88k: SYS.h
        lib/libc/arch/m88k/sys: fork.S
        lib/libc/arch/mips64: SYS.h
        lib/libc/arch/mips64/sys: fork.S
        lib/libc/arch/powerpc: SYS.h
        lib/libc/arch/powerpc/sys: fork.S
        lib/libc/arch/sh: SYS.h
        lib/libc/arch/sh/sys: fork.S
        lib/libc/arch/sparc: SYS.h
        lib/libc/arch/sparc/sys: fork.S
        lib/libc/arch/sparc64: SYS.h
        lib/libc/arch/sparc64/sys: fork.S
        lib/libc/arch/vax: SYS.h
        lib/libc/arch/vax/sys: fork.S
        lib/libc/include: thread_private.h
        lib/libc/stdlib: atexit.c
        lib/libc/sys   : Makefile.inc
        lib/libc/thread: Makefile.inc unithread_malloc_lock.c
        lib/librthread : rthread.c rthread_fork.c rthread_libc.c
                         shlib_version
        regress/lib/csu/callbacks: Makefile
        regress/lib/csu/callbacks/pthread_atfork: Makefile
                                                  pthread_atfork_test.c
Added files:
        lib/libc/include: atfork.h
        lib/libc/sys   : w_fork.c
        lib/libc/thread: atfork.c
        regress/lib/csu/callbacks/pthread_atfork: expected_child.out
                                                  expected_parent.out

Log message:
Make pthread_atfork() track the DSO that called it like atexit() does,
unregistering callbacks if the DSO is unloaded.  Move the callback
handling from libpthread to libc, though libpthread still overrides the
inner call to handle locking and thread-library reinitialization.
Major version bump for both libc and libpthread.

verification that this fixes various ports ajacoutot@
asm assistance miod@; ok millert@ deraadt@

Reply via email to