]> err.no Git - linux-2.6/commit
[PATCH] Fix semundo lock leakage
authorIngo Molnar <mingo@elte.hu>
Fri, 5 Aug 2005 21:05:27 +0000 (23:05 +0200)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 5 Aug 2005 22:56:41 +0000 (15:56 -0700)
commit00a5dfdb93f74e4d95fb0d83c890728e331f8810
treef1d1043d7d02ad6bde3b158807b28bcfdafa21f6
parentba02508248e90a9d696aebd18b48a3290235b53c
[PATCH] Fix semundo lock leakage

semundo->lock can leak if semundo->refcount goes from 2 to 1 while
another thread has it locked.  This causes major problems for PREEMPT
kernels.

The simplest fix for now is to undo the single-thread optimization.

This bug was found via relentless testing by Dominik Karall.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
ipc/sem.c