diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2013-04-08 14:09:57 (GMT) |
---|---|---|
committer | Scott Wood <scottwood@freescale.com> | 2015-02-13 22:21:13 (GMT) |
commit | 0da0040cff2c85176c99357ad68111006c06b427 (patch) | |
tree | d666b06ba3c0cdfa32da4308a157e85b1d6ba63e /kernel | |
parent | c8d506dea6b3417d35668818c1476b5080a42670 (diff) | |
download | linux-fsl-qoriq-0da0040cff2c85176c99357ad68111006c06b427.tar.xz |
kernel/treercu: use a simple waitqueue
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/rcutree.c | 8 | ||||
-rw-r--r-- | kernel/rcutree.h | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/kernel/rcutree.c b/kernel/rcutree.c index e436302..978857a 100644 --- a/kernel/rcutree.c +++ b/kernel/rcutree.c @@ -1160,7 +1160,7 @@ static void rcu_gp_kthread_wake(struct rcu_state *rsp) !ACCESS_ONCE(rsp->gp_flags) || !rsp->gp_kthread) return; - wake_up(&rsp->gp_wq); + swait_wake(&rsp->gp_wq); } /* @@ -1504,7 +1504,7 @@ static int __noreturn rcu_gp_kthread(void *arg) /* Handle grace-period start. */ for (;;) { - wait_event_interruptible(rsp->gp_wq, + swait_event_interruptible(rsp->gp_wq, rsp->gp_flags & RCU_GP_FLAG_INIT); if ((rsp->gp_flags & RCU_GP_FLAG_INIT) && @@ -1523,7 +1523,7 @@ static int __noreturn rcu_gp_kthread(void *arg) } for (;;) { rsp->jiffies_force_qs = jiffies + j; - ret = wait_event_interruptible_timeout(rsp->gp_wq, + ret = swait_event_interruptible_timeout(rsp->gp_wq, (rsp->gp_flags & RCU_GP_FLAG_FQS) || (!ACCESS_ONCE(rnp->qsmask) && !rcu_preempt_blocked_readers_cgp(rnp)), @@ -3330,7 +3330,7 @@ static void __init rcu_init_one(struct rcu_state *rsp, } rsp->rda = rda; - init_waitqueue_head(&rsp->gp_wq); + init_swait_head(&rsp->gp_wq); init_irq_work(&rsp->wakeup_work, rsp_wakeup); rnp = rsp->level[rcu_num_lvls - 1]; for_each_possible_cpu(i) { diff --git a/kernel/rcutree.h b/kernel/rcutree.h index 68ed6a8..976b8a8 100644 --- a/kernel/rcutree.h +++ b/kernel/rcutree.h @@ -403,7 +403,7 @@ struct rcu_state { unsigned long gpnum; /* Current gp number. */ unsigned long completed; /* # of last completed gp. */ struct task_struct *gp_kthread; /* Task for grace periods. */ - wait_queue_head_t gp_wq; /* Where GP task waits. */ + struct swait_head gp_wq; /* Where GP task waits. */ int gp_flags; /* Commands for GP task. */ /* End of fields guarded by root rcu_node's lock. */ |