Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 05 Feb 2012 20:41:15 +0800
From:      David Xu <listlog2011@gmail.com>
To:        Ivan Voras <ivoras@freebsd.org>
Cc:        Garrett Cooper <yanegomi@gmail.com>, freebsd-hackers@freebsd.org, Xin LI <delphij@delphij.net>, davidxu@freebsd.org, Jan Mikkelsen <janm-freebsd-hackers@transactionware.com>
Subject:   Re: sem(4) lockup in python?
Message-ID:  <4F2E78EB.3060007@gmail.com>
In-Reply-To: <CAF-QHFVADLkduLH1AG_hSZeDtDVCC=FkqZxbxrsMY3Y3%2BsMZ8A@mail.gmail.com>
References:  <jejrbe$or8$1@dough.gmane.org> <201201110806.30620.jhb@freebsd.org> <CAF-QHFWFvYTPeM68Mk%2BOYVX--MNhKOJ2o1GF9ZOsBmtiC5fYFQ@mail.gmail.com> <CAGH67wRsek2-WY_ETW6QEER1r5dDXLXfDjbzpHMjtv059Y8cJw@mail.gmail.com> <5D37298B-9D68-4F0F-8AAB-E8F2DBB9D9C3@transactionware.com> <CAGH67wT3HuxPHUXeTib0qJNH%2BO5snn3Eiim1bfj8LewYoKdXdA@mail.gmail.com> <CAF-QHFVADLkduLH1AG_hSZeDtDVCC=FkqZxbxrsMY3Y3%2BsMZ8A@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2012/2/5 20:02, Ivan Voras wrote:
> On 5 February 2012 11:44, Garrett Cooper<yanegomi@gmail.com>  wrote:
>
>>     'make MAKE_JOBS_NUMBER=1' is the workground used right now..
> David Xu suggested that it is a bug in Python - it doesn't set
> process-shared attribute when it calls sem_init(), but i've tried
> patching it (replacing the port patchfile file the one I've attached)
> and I still get the hang.
Although I don't know where is the python bug, since I don't know the piece
of source code. But general rule to use anonymous shared semaphore between
forked processes is the semaphore should be initialized in shared memory 
page
and sem_init() with pshared set 1, such as:
   sem_ptr = mmap(MMAP_SHARED);
   sem_init(sem_ptr, pshared=1, init_value);

Regards,
David Xu



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F2E78EB.3060007>