#include <unistd.h>
#include <stdio.h>
#include <assert.h>
-#include <sys/syscall.h>
#include <sched.h>
#include <errno.h>
#include <urcu/arch.h>
+#ifdef __linux__
+#include <syscall.h>
+#endif
+
/* hardcoded number of CPUs */
#define NR_CPUS 16384
static inline void loop_sleep(unsigned long l)
{
while(l-- != 0)
- cpu_relax();
+ caa_cpu_relax();
}
static int verbose_mode;
pthread_mutex_t rcu_copy_mutex = PTHREAD_MUTEX_INITIALIZER;
static
-unsigned long long __attribute__((aligned(CACHE_LINE_SIZE))) *tot_nr_writes;
+unsigned long long __attribute__((aligned(CAA_CACHE_LINE_SIZE))) *tot_nr_writes;
void rcu_copy_mutex_lock(void)
while (!test_go)
{
}
- smp_mb();
+ cmm_smp_mb();
for (;;) {
_rcu_read_lock();
while (!test_go)
{
}
- smp_mb();
+ cmm_smp_mb();
for (;;) {
#ifndef TEST_LOCAL_GC
tot_nr_writes = malloc(sizeof(*tot_nr_writes) * nr_writers);
pending_reclaims = malloc(sizeof(*pending_reclaims) * nr_writers);
if (reclaim_batch * sizeof(*pending_reclaims[i].queue)
- < CACHE_LINE_SIZE)
+ < CAA_CACHE_LINE_SIZE)
for (i = 0; i < nr_writers; i++)
- pending_reclaims[i].queue = calloc(1, CACHE_LINE_SIZE);
+ pending_reclaims[i].queue = calloc(1, CAA_CACHE_LINE_SIZE);
else
for (i = 0; i < nr_writers; i++)
pending_reclaims[i].queue = calloc(reclaim_batch,
exit(1);
}
- smp_mb();
+ cmm_smp_mb();
test_go = 1;