Open bxatnarf opened 6 years ago
Popcorn uses a system call "popcorn_migration" to tell the kernel to start the migration, which seems not easy to be refactored.
There are some (most) modifications in Linux kernel code. I checked them out with "grep POPCORN". I think we might be able to refactor into modules with some "kernel hooks", but seems we still have to define those hooks in kernel code (also wrapped with CONFIG_xxx). Do you think that will be better?
$ grep POPCORN * -rn | grep -Ev 'cscope.out|Binary|kernel/popcorn|msg_layer'
arch/x86/Kconfig:50: select ARCH_SUPPORTS_POPCORN if X86_64
arch/x86/mm/fault.c:28:#ifdef CONFIG_POPCORN
arch/x86/mm/fault.c:1207:#ifdef CONFIG_POPCORN
... ...
The upstreaming process may be simplified if popcorn is refactored into a series of one or more kernel modules. This would make it more likely that other modules and kernel components can make sure of various popcorn features.