nethack, you *will* migrate, really!! : suggestion for double request checking...
Florian Delizy <[email protected]> Fri, 29 Sep 2006 23:22:28 +0200
| Newsgroups | gmane.linux.cluster.openmosix.devel |
|---|---|
| Message-ID | <[email protected]> |
I found the reason why the nethack process would not migrate, tell me if I am wrong, but it seems that processes can only migrate on sycall enter (or schedule enter). If the move request gets to the task during a syscall, it is simply discarded, and the process does not migrate at all. I understand this makes sense for a normal HPC process (cpu consuming, means, no or nearly no syscall), but I think it would make sense to try migration on syscall exit (this is what this patch should do). Vincent, can you please tell me if I am right ? or so ? ***** warning ***** I have not compiled yet this patch, don't try it, it may blast your kernel or turn it into ... windows who knows ... it is just a patch idea (can it be ?) ***** warning ***** Anyhow, it's quite late here, (or I may just be dumb...) so if I am wrong, please tell me. thanks Florian Delizy ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ openMosix-devel mailing list openMosix-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/openmosix-devel
openmosix-allow-process-migration-on-syscall-exit.patch
(text/x-patch, 508 B)
Index: linux/arch/x86_64/kernel/entry.S =================================================================== --- linux.orig/arch/x86_64/kernel/entry.S 2006-09-29 23:15:53.000000000 +0200 +++ linux/arch/x86_64/kernel/entry.S 2006-09-29 23:15:57.000000000 +0200 @@ -600,6 +600,11 @@ andl %edi,%edx CFI_REMEMBER_STATE jnz retint_careful +#ifdef CONFIG_OPENMOSIX + SAVE_REST + call openmosix_pre_usermode + RESTORE_REST +#endif /* CONFIG_OPENMOSIX */ retint_swapgs: swapgs retint_restore_args: