From 238eb13d671cc39e181203923ccae3e5c5b84148 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Sat, 22 Jun 2013 14:05:10 -0400 Subject: [PATCH] doc/examples: document call_rcu() Signed-off-by: Mathieu Desnoyers --- doc/examples/urcu-flavors/mb.c | 6 ++++++ doc/examples/urcu-flavors/qsbr.c | 6 ++++++ doc/examples/urcu-flavors/signal.c | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/doc/examples/urcu-flavors/mb.c b/doc/examples/urcu-flavors/mb.c index 24daaef..757fe9e 100644 --- a/doc/examples/urcu-flavors/mb.c +++ b/doc/examples/urcu-flavors/mb.c @@ -108,6 +108,12 @@ int main(int argc, char **argv) */ cds_list_for_each_entry_safe(node, n, &mylist, node) { cds_list_del_rcu(&node->node); + /* + * call_rcu() will ensure that the handler + * "rcu_free_node" is executed after a grace period. + * call_rcu() can be called from RCU read-side critical + * sections. + */ call_rcu(&node->rcu_head, rcu_free_node); } diff --git a/doc/examples/urcu-flavors/qsbr.c b/doc/examples/urcu-flavors/qsbr.c index 75302f0..6f5b9b5 100644 --- a/doc/examples/urcu-flavors/qsbr.c +++ b/doc/examples/urcu-flavors/qsbr.c @@ -98,6 +98,12 @@ int main(int argc, char **argv) */ cds_list_for_each_entry_safe(node, n, &mylist, node) { cds_list_del_rcu(&node->node); + /* + * call_rcu() will ensure that the handler + * "rcu_free_node" is executed after a grace period. + * call_rcu() can be called from RCU read-side critical + * sections. + */ call_rcu(&node->rcu_head, rcu_free_node); } diff --git a/doc/examples/urcu-flavors/signal.c b/doc/examples/urcu-flavors/signal.c index 53bb57f..b7c279c 100644 --- a/doc/examples/urcu-flavors/signal.c +++ b/doc/examples/urcu-flavors/signal.c @@ -107,6 +107,12 @@ int main(int argc, char **argv) */ cds_list_for_each_entry_safe(node, n, &mylist, node) { cds_list_del_rcu(&node->node); + /* + * call_rcu() will ensure that the handler + * "rcu_free_node" is executed after a grace period. + * call_rcu() can be called from RCU read-side critical + * sections. + */ call_rcu(&node->rcu_head, rcu_free_node); } -- 2.34.1