projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Bump version to 0.10-pre
[urcu.git]
/
tests
/
benchmark
/
test_urcu_lfs.c
diff --git
a/tests/benchmark/test_urcu_lfs.c
b/tests/benchmark/test_urcu_lfs.c
index 21015328828009fb450df465578f61af546fe013..38e99bff20cd47d2ece2aa51d21dd17f370e10f2 100644
(file)
--- a/
tests/benchmark/test_urcu_lfs.c
+++ b/
tests/benchmark/test_urcu_lfs.c
@@
-21,8
+21,6
@@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#define _GNU_SOURCE
-#include "config.h"
#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>
#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>
@@
-50,6
+48,8
@@
#include <urcu.h>
#include <urcu/cds.h>
#include <urcu.h>
#include <urcu/cds.h>
+#define POISON_PTR ((void *) 0x42UL)
+
/*
* External synchronization used.
*/
/*
* External synchronization used.
*/
@@
-219,6
+219,7
@@
void do_test_pop(enum test_sync sync)
if (snode) {
struct test *node;
if (snode) {
struct test *node;
+ snode->next = POISON_PTR;
node = caa_container_of(snode,
struct test, list);
if (sync == TEST_SYNC_RCU)
node = caa_container_of(snode,
struct test, list);
if (sync == TEST_SYNC_RCU)
@@
-241,6
+242,7
@@
void do_test_pop_all(enum test_sync sync)
cds_lfs_for_each_safe(head, snode, n) {
struct test *node;
cds_lfs_for_each_safe(head, snode, n) {
struct test *node;
+ snode->next = POISON_PTR;
node = caa_container_of(snode, struct test, list);
if (sync == TEST_SYNC_RCU)
call_rcu(&node->rcu, free_node_cb);
node = caa_container_of(snode, struct test, list);
if (sync == TEST_SYNC_RCU)
call_rcu(&node->rcu, free_node_cb);
@@
-512,6
+514,7
@@
int main(int argc, char **argv)
tot_successful_dequeues + end_dequeues);
free_all_cpu_call_rcu_data();
tot_successful_dequeues + end_dequeues);
free_all_cpu_call_rcu_data();
+ cds_lfs_destroy(&s);
free(count_enqueuer);
free(count_dequeuer);
free(tid_enqueuer);
free(count_enqueuer);
free(count_dequeuer);
free(tid_enqueuer);
This page took
0.023901 seconds
and
4
git commands to generate.