ipc,rcu: convert call_rcu(free_un) to kfree_rcu()
PATCH 29/36 ipc,rcu: convert call_rcu(free_un) to kfree_rcu()
The rcu callback free_un() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_un).
Signed-off-by Lai Jiangshan <[email protected]>
--- ipc/sem.c | 10 ++-------- 1 files changed, 2 insertions(+), 8 deletions(-)
ipc/sem.c +2 -8
@@ -689,12 +689,6 @@ static int count_semzcnt (struct sem_array * sma, ushort semnum)return semzcnt; } -static void free_un (struct rcu_head *head) -{ - struct sem_undo *un = container_of(head, struct sem_undo, rcu); -kfree (un); -} -/* Free a semaphore set. freeary() is called with sem_ids.rw_mutex locked * as a writer and the spinlock for this semaphore set hold. sem_ids.rw_mutex * remains locked on exit.
@@ -714,7 +708,7 @@ static void freeary(struct ipc_namespace *ns, struct kern_ipc_perm *ipcp) un->semid =-1 ;list_del_rcu (&un->list_proc);spin_unlock (&un->ulp->lock); -call_rcu (&un->rcu, free_un); +kfree_rcu (un, rcu); }/* Wake up all pending processes and let them fail with EIDRM. */
@@ -1610,7 +1604,7 @@ void exit_sem(struct task_struct *tsk)sem_unlock (sma);wake_up_sem_queue_do (&tasks); -call_rcu (&un->rcu, free_un); +kfree_rcu (un, rcu); }kfree (ulp); }
Signature · 1 line
1.7.4