threads/115211: pthread_atfork misbehaves in initial thread

Douglas Wells sysmaint at contek.com
Mon Aug 27 06:40:06 PDT 2007


The following reply was made to PR threads/115211; it has been noted by GNATS.

From: sysmaint at contek.com (Douglas Wells)
To: Craig Rodrigues <rodrigc at crodrigues.org>
Cc: bug-followup at FreeBSD.org, sysmaint at contek.com
Subject: Re: threads/115211: pthread_atfork misbehaves in initial
 thread
Date: Mon, 27 Aug 2007 08:46:52 -0400 (EDT)

 > Hi,
 > 
 > On FreeBSD-CURRENT, if I do:
 > 
 > gcc pthread_atforkbug.c -lkse && ./a.out
 > 
 > This is the output:
 > 
 > parent pid (48871)
 > Child exiting: (48872)
 > child (48872) returned
 > 
 > If I do:
 > 
 > gcc pthread_atforkbug.c -lkse && ./a.out
 > 
 > parent pid (48877)
 > af_prepare:  pid (48877)
 >  af_parent:  pid (48877)
 >   af_child:  pid (48878)
 > Child exiting: (48878)
 > child (48878) returned
 > 
 > 
 > On FreeBSD 6.2, -pthread is mapped to -lkse, while on CURRENT, it is mapped
 > to -lthr.  Can you try your test again with -lthr on FreeBSD 6.2?
 > This looks like a libkse bug.
 > 
 > -- 
 > Craig Rodrigues
 > rodrigc at crodrigues.org
 
 Yes, I can verify that using:
 	-pthread => erroneous behavior
 	-lthr => expected behavior
 on my installation of 6.2.
 
  - dmw


More information about the freebsd-threads mailing list