uatomic/x86: Remove redundant memory barriers
[urcu.git] / doc / examples / hlist / cds_hlist_for_each_entry_rcu.c
index f6b744a353d139b1ab728474000986fcf10971c0..bf675fd809233d8c86ea7414e1d8a6bf583f0ca0 100644 (file)
@@ -1,22 +1,15 @@
+// SPDX-FileCopyrightText: 2013 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+//
+// SPDX-License-Identifier: MIT
+
 /*
- * Copyright (C) 2013  Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
- *
- * 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.
  */
 
 #include <stdio.h>
 
-#include <urcu.h>              /* Userspace RCU flavor */
+#include <urcu/urcu-memb.h>    /* Userspace RCU flavor */
 #include <urcu/rcuhlist.h>     /* RCU hlist */
 #include <urcu/compiler.h>     /* For CAA_ARRAY_SIZE */
 
@@ -28,7 +21,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 */
@@ -40,7 +33,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
@@ -65,7 +58,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
@@ -75,10 +68,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;
 }
This page took 0.023568 seconds and 4 git commands to generate.