提交 80cdc1be 创建 作者: Nickolai Zeldovich's avatar Nickolai Zeldovich

avoid race condition in mapbench that triggers some bug in mscan

上级 207c8bac
......@@ -11,6 +11,7 @@ enum { verbose = 0 };
enum { npg = 1 };
static pthread_barrier_t bar;
static pthread_barrier_t bar2;
#define NITER 10 // 1000000
void*
......@@ -25,6 +26,8 @@ thr(void *arg)
if (tid == 0)
mtenable_type(mtrace_record_ascope, "xv6-asharing");
pthread_barrier_wait(&bar2);
for (int i = 0; i < NITER; i++) {
if (verbose && ((i % 100) == 0))
fprintf(1, "%d: %d ops\n", tid, i);
......@@ -60,6 +63,7 @@ main(int ac, char **av)
// fprintf(1, "mapbench[%d]: start esp %x, nthread=%d\n", getpid(), rrsp(), nthread);
pthread_barrier_init(&bar, 0, nthread);
pthread_barrier_init(&bar2, 0, nthread);
for(u64 i = 0; i < nthread; i++) {
pthread_t tid;
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论