mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
ipc/sem.c: convert undo structures to struct list_head
The undo structures contain two linked lists, the attached patch replaces them with generic struct list_head lists. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Manfred Spraul <manfred@colorfullife.com> Cc: Nadia Derbey <Nadia.Derbey@bull.net> Cc: Pierre Peiffer <peifferp@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
00c2bf85d8
commit
4daa28f6d8
2 changed files with 93 additions and 78 deletions
|
@ -95,7 +95,7 @@ struct sem_array {
|
|||
struct sem *sem_base; /* ptr to first semaphore in array */
|
||||
struct sem_queue *sem_pending; /* pending operations to be processed */
|
||||
struct sem_queue **sem_pending_last; /* last pending operation */
|
||||
struct sem_undo *undo; /* undo requests on this array */
|
||||
struct list_head list_id; /* undo requests on this array */
|
||||
unsigned long sem_nsems; /* no. of semaphores in array */
|
||||
};
|
||||
|
||||
|
@ -118,8 +118,8 @@ struct sem_queue {
|
|||
* when the process exits.
|
||||
*/
|
||||
struct sem_undo {
|
||||
struct sem_undo * proc_next; /* next entry on this process */
|
||||
struct sem_undo * id_next; /* next entry on this semaphore set */
|
||||
struct list_head list_proc; /* per-process list: all undos from one process */
|
||||
struct list_head list_id; /* per semaphore array list: all undos for one array */
|
||||
int semid; /* semaphore set identifier */
|
||||
short * semadj; /* array of adjustments, one per semaphore */
|
||||
};
|
||||
|
@ -128,9 +128,9 @@ struct sem_undo {
|
|||
* that may be shared among all a CLONE_SYSVSEM task group.
|
||||
*/
|
||||
struct sem_undo_list {
|
||||
atomic_t refcnt;
|
||||
spinlock_t lock;
|
||||
struct sem_undo *proc_list;
|
||||
atomic_t refcnt;
|
||||
spinlock_t lock;
|
||||
struct list_head list_proc;
|
||||
};
|
||||
|
||||
struct sysv_sem {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue