X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=doc%2Fexamples%2Flist%2Fcds_list_replace_rcu.c;h=aa6161c25810d57db5947244e897ad6927f377f1;hb=HEAD;hp=4ccc1df0038e583be8ea57a2b30e420a78d5654f;hpb=7eba9f8868d01401bc9b09ab2764bd371b783ad1;p=urcu.git diff --git a/doc/examples/list/cds_list_replace_rcu.c b/doc/examples/list/cds_list_replace_rcu.c index 4ccc1df..d17084b 100644 --- a/doc/examples/list/cds_list_replace_rcu.c +++ b/doc/examples/list/cds_list_replace_rcu.c @@ -1,22 +1,15 @@ +// 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 replace a node within a linked-list safely * against concurrent RCU traversals. */ #include -#include /* Userspace RCU flavor */ +#include /* Userspace RCU flavor */ #include /* RCU list */ #include /* For CAA_ARRAY_SIZE */ @@ -37,7 +30,7 @@ void free_node_rcu(struct rcu_head *head) free(node); } -int main(int argc, char **argv) +int main(void) { int values[] = { -5, 42, 36, 24, }; CDS_LIST_HEAD(mylist); /* Defines an empty list head */ @@ -77,7 +70,7 @@ int main(int argc, char **argv) /* Replacement node value is negated original value. */ new_node->value = -node->value; cds_list_replace_rcu(&node->node, &new_node->node); - call_rcu(&node->rcu_head, free_node_rcu); + urcu_memb_call_rcu(&node->rcu_head, free_node_rcu); } /*