kern/127545: [sysvipc] POSIX (1003.1b) semaphores can become negative

Bruce Simpson bms at incunabulum.net
Thu Mar 12 02:10:03 PDT 2009


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

From: Bruce Simpson <bms at incunabulum.net>
To: freebsd-gnats-submit at freebsd.org
Cc:  
Subject: Re: kern/127545: [sysvipc] POSIX (1003.1b) semaphores can become
 negative
Date: Thu, 12 Mar 2009 08:51:57 +0000

 I just managed to reproduce this on RELENG_7, and I clearly see the 
 semaphore value becoming negative.
 
 I am attempting to track down why Python multiprocessing doesn't work. 
 It looks like
 it's related to how Python processes hang on FreeBSD when a thread forks 
 a new process.
 
 On the other hand, multiprocessing does use POSIX semaphores for 
 synchronization;
 the Python interpreter's use of this itself is optional, and it tries to 
 emulate it with
 condition variables and mutexes.
 
 jhb@ recently merged some cleanups however they don't have much to do 
 with the
 issue here, they just make the implementation cleaner.


More information about the freebsd-bugs mailing list