Re: 2.6.35-rc3 deadlocks on semaphore operations

From: Luca Tettamanti
Date: Mon Jun 21 2010 - 16:09:25 EST


On Fri, Jun 18, 2010 at 09:49:44AM -0500, Christoph Lameter wrote:
> Can produce it with make-kpkg building a kernel.
[...]
> linux-2.6$ strace -p21561
> Process 21561 attached - interrupt to quit
> semop(32768, {{0, -1, SEM_UNDO}}, 1
>
> linux-2.6$ strace -p21751
> Process 21751 attached - interrupt to quit
> semop(32768, {{0, -1, SEM_UNDO}}, 1
>
> linux-2.6$ strace -p21792
> Process 21792 attached - interrupt to quit
> semop(32768, {{0, -1, SEM_UNDO}}, 1
>
> linux-2.6$ strace -p21793
> Process 21793 attached - interrupt to quit
> semop(32768, {{0, -1, SEM_UNDO}}, 1

Ah! I was trying to understand what was going on with apache... I see
the same symptoms with apache and prefork module: each child serves one
request and then just hangs until it's recycled.
Strace shows the same semop syscall.

# ipcs

------ Shared Memory Segments --------
key shmid owner perms bytes nattch status

------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 65536 www-data 600 1

------ Message Queues --------
key msqid owner perms used-bytes messages

# cat /proc/sysvipc/sem
key semid perms nsems uid gid cuid cgid otime ctime
0 65536 600 1 33 33 0 0 1277149940 1277149903

# /tmp/getall 65536 -v
getall <id> [-v]
found 1 semaphores.
0: 0 (cnt 4 zcnt 0)


Luca
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/