]> git.baikalelectronics.ru Git - kernel.git/commit
ipc,sem: fix semctl(..., GETNCNT)
authorRik van Riel <riel@redhat.com>
Thu, 9 May 2013 20:59:59 +0000 (16:59 -0400)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 9 May 2013 21:17:47 +0000 (14:17 -0700)
commitc4f0f7b65800fad8d65e171b4dfeeb9fb336c8eb
tree4499951b79ff2d199bca0d87ef379d829cc1e400
parent512ae52f6afbf1d7f461e78b2959a6add414e15b
ipc,sem: fix semctl(..., GETNCNT)

The semctl GETNCNT returns the number of semops waiting for the
specified semaphore to become nonzero.  After commit 256ec5b5b9cf
("ipc,sem: have only one list in struct sem_queue"), the semops waiting
on just one semaphore are waiting on that semaphore's list.

In order to return the correct count, we have to walk that list too, in
addition to the sem_array's list for complex operations.

Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
ipc/sem.c