The patch below fixes sem_exit() so that the BKL is always released.
thanks,
-chris
===== ipc/sem.c 1.5 vs edited =====
--- 1.5/ipc/sem.c Tue Apr 23 17:15:25 2002
+++ edited/ipc/sem.c Thu Apr 25 20:01:02 2002
@@ -1176,8 +1176,10 @@
}
undo_list = current->sysvsem.undo_list;
- if ((undo_list == NULL) || (atomic_read(&undo_list->refcnt) != 1))
+ if ((undo_list == NULL) || (atomic_read(&undo_list->refcnt) != 1)) {
+ unlock_kernel();
return;
+ }
/* There's no need to hold the semundo list lock, as current
* is the last task exiting for this undo list.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/