]> pd.if.org Git - nbds/blobdiff - test/ll_test.c
code cleanup
[nbds] / test / ll_test.c
index e7c9337d4f7c02f7c402474209d4c46059ff1790..4f2e236056f49ff52804498a2dd42fd1eaf4c22c 100644 (file)
@@ -21,12 +21,22 @@ void *worker (void *arg) {
 
     for (int i = 0; i < NUM_ITERATIONS/num_threads_; ++i) {
         unsigned r = nbd_rand();
-        int key = r & 0xF;
+        uint64_t key = r & 0xF;
+#if 1
+        char key_str[10];
+        sprintf(key_str, "%llX", key);
         if (r & (1 << 8)) {
-            ll_add(ll_, key, 1);
+            ll_cas(ll_, key_str, strlen(key_str) + 1, EXPECT_WHATEVER, 1);
         } else {
-            ll_remove(ll_, key);
+            ll_remove(ll_, key_str, strlen(key_str) + 1);
         }
+#else
+        if (r & (1 << 8)) {
+            ll_cas(ll_, (void *)key, -1, EXPECT_WHATEVER, 1);
+        } else {
+            ll_remove(ll_, (void *)key, -1);
+        }
+#endif
 
         rcu_update();
     }
@@ -36,7 +46,7 @@ void *worker (void *arg) {
 
 int main (int argc, char **argv) {
     nbd_init();
-    //lwt_set_trace_level("m0l0");
+    lwt_set_trace_level("l3");
 
     char* program_name = argv[0];
     pthread_t thread[MAX_NUM_THREADS];