Create default call rcu data upon per-cpu call-rcu teardown
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 28 Sep 2011 20:03:13 +0000 (16:03 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 28 Sep 2011 20:03:13 +0000 (16:03 -0400)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
urcu-call-rcu-impl.h

index f9250e8..3e947af 100644 (file)
@@ -609,6 +609,8 @@ void call_rcu_data_free(struct call_rcu_data *crdp)
                _CMM_STORE_SHARED(crdp->cbs.head, NULL);
                cbs_tail = (struct cds_wfq_node **)
                        uatomic_xchg(&crdp->cbs.tail, &crdp->cbs.head);
+               /* Create default call rcu data if need be */
+               (void) get_default_call_rcu_data();
                cbs_endprev = (struct cds_wfq_node **)
                        uatomic_xchg(&default_call_rcu_data, cbs_tail);
                *cbs_endprev = cbs;
This page took 0.031238 seconds and 4 git commands to generate.