]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
kernel/treercu: use a simple waitqueue
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Mon, 8 Apr 2013 14:09:57 +0000 (16:09 +0200)
committerMichal Sojka <sojka@merica.cz>
Sun, 13 Sep 2015 07:47:45 +0000 (09:47 +0200)
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
kernel/rcu/tree.c
kernel/rcu/tree.h

index 84fede206a58e294b2fa504d253cde4de5fdca6d..924d284ccb4fe900f9883f5c352127c9474feaf8 100644 (file)
@@ -1539,7 +1539,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);
 }
 
 /*
@@ -1930,7 +1930,7 @@ static int __noreturn rcu_gp_kthread(void *arg)
                                               ACCESS_ONCE(rsp->gpnum),
                                               TPS("reqwait"));
                        rsp->gp_state = RCU_GP_WAIT_GPS;
-                       wait_event_interruptible(rsp->gp_wq,
+                       swait_event_interruptible(rsp->gp_wq,
                                                 ACCESS_ONCE(rsp->gp_flags) &
                                                 RCU_GP_FLAG_INIT);
                        /* Locking provides needed memory barrier. */
@@ -1959,7 +1959,7 @@ static int __noreturn rcu_gp_kthread(void *arg)
                                               ACCESS_ONCE(rsp->gpnum),
                                               TPS("fqswait"));
                        rsp->gp_state = RCU_GP_WAIT_FQS;
-                       ret = wait_event_interruptible_timeout(rsp->gp_wq,
+                       ret = swait_event_interruptible_timeout(rsp->gp_wq,
                                        ((gf = ACCESS_ONCE(rsp->gp_flags)) &
                                         RCU_GP_FLAG_FQS) ||
                                        (!ACCESS_ONCE(rnp->qsmask) &&
@@ -3953,7 +3953,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);
        rnp = rsp->level[rcu_num_lvls - 1];
        for_each_possible_cpu(i) {
                while (i > rnp->grphi)
index 3d4f2d517d500846ea5fddb29148193df77e9d43..29e1aa04284bfa9ffda753230582184202d34aa7 100644 (file)
@@ -430,7 +430,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. */
        short gp_flags;                         /* Commands for GP task. */
        short gp_state;                         /* GP kthread sleep state. */