diff options
author | Namhoon Kim <namhoonk@cs.unc.edu> | 2016-09-30 04:15:27 -0400 |
---|---|---|
committer | Namhoon Kim <namhoonk@cs.unc.edu> | 2016-09-30 04:15:27 -0400 |
commit | 4172fff1a3870af7d65675e05eb0b7aba3804ea8 (patch) | |
tree | 07a9a55df4a74622f99aa15841b8513341d7399b /litmus | |
parent | 267b5fb8e3786eee621d434e4892020edd0fdf72 (diff) |
Support Multiple replica
Diffstat (limited to 'litmus')
-rw-r--r-- | litmus/litmus.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/litmus/litmus.c b/litmus/litmus.c index 652e70df69bb..11e4c5da9c10 100644 --- a/litmus/litmus.c +++ b/litmus/litmus.c | |||
@@ -429,11 +429,16 @@ asmlinkage long sys_set_page_color(int cpu) | |||
429 | rcu_read_unlock(); | 429 | rcu_read_unlock(); |
430 | 430 | ||
431 | if (is_exist == 0) { | 431 | if (is_exist == 0) { |
432 | int cpu_i; | ||
432 | lib_page = kmalloc(sizeof(struct shared_lib_page), GFP_KERNEL); | 433 | lib_page = kmalloc(sizeof(struct shared_lib_page), GFP_KERNEL); |
433 | lib_page->master_page = old_page; | 434 | lib_page->master_page = old_page; |
434 | lib_page->r_page = NULL; | 435 | //lib_page->r_page = NULL; |
435 | lib_page->master_pfn = page_to_pfn(old_page); | 436 | lib_page->master_pfn = page_to_pfn(old_page); |
436 | lib_page->r_pfn = INVALID_PFN; | 437 | //lib_page->r_pfn = INVALID_PFN; |
438 | for (cpu_i = 0; cpu_i < NR_CPUS; cpu_i++) { | ||
439 | lib_page->r_page[cpu_i] = NULL; | ||
440 | lib_page->r_pfn[cpu_i] = INVALID_PFN; | ||
441 | } | ||
437 | list_add_tail(&lib_page->list, &shared_lib_pages); | 442 | list_add_tail(&lib_page->list, &shared_lib_pages); |
438 | TRACE_TASK(current, "NEW PAGE %05lx ADDED.\n", lib_page->master_pfn); | 443 | TRACE_TASK(current, "NEW PAGE %05lx ADDED.\n", lib_page->master_pfn); |
439 | } | 444 | } |
@@ -551,7 +556,7 @@ asmlinkage long sys_set_page_color(int cpu) | |||
551 | rcu_read_lock(); | 556 | rcu_read_lock(); |
552 | list_for_each_entry(lpage, &shared_lib_pages, list) | 557 | list_for_each_entry(lpage, &shared_lib_pages, list) |
553 | { | 558 | { |
554 | TRACE_TASK(current, "master_PFN = %05lx r_PFN = %05lx PageSwapCache=%d\n", lpage->master_pfn, lpage->r_pfn, PageSwapCache(lpage->master_page)); | 559 | TRACE_TASK(current, "master_PFN = %05lx r_PFN = %05lx, %05lx, %05lx, %05lx\n", lpage->master_pfn, lpage->r_pfn[0], lpage->r_pfn[1], lpage->r_pfn[2], lpage->r_pfn[3]); |
555 | } | 560 | } |
556 | rcu_read_unlock(); | 561 | rcu_read_unlock(); |
557 | } | 562 | } |