Remove page coloring
authorBarret Rhoden <brho@cs.berkeley.edu>
Thu, 18 Aug 2016 16:02:22 +0000 (12:02 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 29 Nov 2016 16:27:40 +0000 (11:27 -0500)
commit8c51149ef09ab4540963b80dc06d8a73069ec4d3
treef201eaec264173a60cd1f8d191b7f0d72a524fd5
parent7e84acbc69f7cd2da77cd6554c8141095256c758
Remove page coloring

Page coloring doesn't work with contiguous memory allocators, and it
partitions all levels of the cache hierarchy, which doesn't work well with
spatial partitioning.  For instance, if we partition the L3 into 8 colors
(the number is based on the cache properties), we might be partitioning the
L1 and L2 into two colors (again, based on cache properties).  Although we
now have cache isolation in the shared LLC, we also partition a cache that
is already per-core.

The better approach is to use some sort of hardware support, such as
Intel's Cache Allocation Technology.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
24 files changed:
Kconfig
config-default
kern/arch/riscv/Kbuild
kern/arch/riscv/colored_caches.c [deleted file]
kern/arch/riscv/colored_page_alloc.h [deleted file]
kern/arch/riscv/page_alloc.c
kern/arch/x86/Kbuild
kern/arch/x86/colored_caches.c [deleted file]
kern/arch/x86/colored_page_alloc.h [deleted file]
kern/arch/x86/page_alloc.c
kern/include/colored_caches.h [deleted file]
kern/include/colored_page_alloc.h [deleted file]
kern/include/env.h
kern/include/linux/compat_todo.h
kern/include/page_alloc.h
kern/src/Kbuild
kern/src/colored_caches.c [deleted file]
kern/src/init.c
kern/src/ktest/pb_ktests.c
kern/src/manager.c
kern/src/monitor.c
kern/src/page_alloc.c
kern/src/process.c
kern/src/syscall.c