test_urcu_lfs: test for the proper pointer
[urcu.git] / tests / test_urcu_lfs.c
index 88bf65d09bd533bf19139a4028e68e990e43ea64..99d1b4c9dfb426179b81e6c371623541f018c445 100644 (file)
@@ -78,9 +78,9 @@ static unsigned long duration;
 /* read-side C.S. duration, in loops */
 static unsigned long wdelay;
 
-static inline void loop_sleep(unsigned long l)
+static inline void loop_sleep(unsigned long loops)
 {
-       while(l-- != 0)
+       while (loops-- != 0)
                caa_cpu_relax();
 }
 
@@ -242,13 +242,14 @@ void *thr_dequeuer(void *_count)
 
        for (;;) {
                struct cds_lfs_node_rcu *snode;
-               struct test *node;
 
                rcu_read_lock();
                snode = cds_lfs_pop_rcu(&s);
-               node = caa_container_of(snode, struct test, list);
                rcu_read_unlock();
-               if (node) {
+               if (snode) {
+                       struct test *node;
+
+                       node = caa_container_of(snode, struct test, list);
                        call_rcu(&node->rcu, free_node_cb);
                        URCU_TLS(nr_successful_dequeues)++;
                }
This page took 0.02262 seconds and 4 git commands to generate.