X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=doc%2Fexamples%2Fhlist%2Fcds_hlist_for_each_rcu.c;h=464205400c7938edcfda2171cb962d66afaabbe7;hb=HEAD;hp=47baa0e88db9da7709233e553f55f47e9269d52b;hpb=474190bf1a9025850c14aa67eb88ba9815bb74f4;p=urcu.git diff --git a/doc/examples/hlist/cds_hlist_for_each_rcu.c b/doc/examples/hlist/cds_hlist_for_each_rcu.c index 47baa0e..4642054 100644 --- a/doc/examples/hlist/cds_hlist_for_each_rcu.c +++ b/doc/examples/hlist/cds_hlist_for_each_rcu.c @@ -1,15 +1,8 @@ +// SPDX-FileCopyrightText: 2013 Mathieu Desnoyers +// +// SPDX-License-Identifier: MIT + /* - * Copyright (C) 2013 Mathieu Desnoyers - * - * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED - * OR IMPLIED. ANY USE IS AT YOUR OWN RISK. - * - * Permission is hereby granted to use or copy this program for any - * purpose, provided the above notices are retained on all copies. - * Permission to modify the code and to distribute modified code is - * granted, provided the above notices are retained, and a notice that - * the code was modified is included with the above copyright notice. - * * This example shows how to do a non-circular RCU linked list * traversal, safely against concurrent RCU updates. * cds_hlist_for_each_rcu() iterates on struct cds_hlist_node, and thus, @@ -19,7 +12,7 @@ #include -#include /* Userspace RCU flavor */ +#include /* Userspace RCU flavor */ #include /* RCU hlist */ #include /* For CAA_ARRAY_SIZE */ @@ -31,7 +24,7 @@ struct mynode { struct cds_hlist_node node; /* Linked-list chaining */ }; -int main(int argc, char **argv) +int main(void) { int values[] = { -5, 42, 36, 24, }; CDS_HLIST_HEAD(mylist); /* Defines an empty hlist head */ @@ -43,7 +36,7 @@ int main(int argc, char **argv) * Each thread need using RCU read-side need to be explicitly * registered. */ - rcu_register_thread(); + urcu_memb_register_thread(); /* * Adding nodes to the linked-list. Safe against concurrent @@ -70,7 +63,7 @@ int main(int argc, char **argv) * Surround the RCU read-side critical section with rcu_read_lock() * and rcu_read_unlock(). */ - rcu_read_lock(); + urcu_memb_read_lock(); /* * This traversal can be performed concurrently with RCU @@ -82,10 +75,10 @@ int main(int argc, char **argv) printf(" %d", node->value); } - rcu_read_unlock(); + urcu_memb_read_unlock(); printf("\n"); end: - rcu_unregister_thread(); + urcu_memb_unregister_thread(); return ret; }