Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Jan 2012 12:21:18 +0100
From:      Ivan Voras <ivoras@freebsd.org>
To:        freebsd-hackers@freebsd.org
Subject:   sem(4) lockup in python?
Message-ID:  <jejrbe$or8$1@dough.gmane.org>

next in thread | raw e-mail | index | archive | help
The lang/python27 port can optionally be built with the support for 
POSIX semaphores - i.e. sem(4). This option is labeled as experimental 
so it may be that the code is simply incorrect. I've tried it and get 
frequent hangs with the python process in the "usem" state. The kernel 
stack is as follows and looks reasonable:

# procstat -kk 19008
   PID    TID COMM             TDNAME           KSTACK 

19008 101605 python           -                mi_switch+0x174 
sleepq_catch_signals+0x2f4 sleepq_wait_sig+0x16 _sleep+0x269 
do_sem_wait+0xa19 __umtx_op_sem_wait+0x51 amd64_syscall+0x450 
Xfast_syscall+0xf7

The process doesn't react to SIGINT or SIGTERM but fortunately reacts to 
SIGKILL.

This could be an error in Python code but OTOH this code is not 
FreeBSD-specific so it's unlikely.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?jejrbe$or8$1>