On 19/12/2025 23:54, Samuel Thibault wrote:
Michael Kelly, le jeu. 18 déc. 2025 20:02:23 +0000, a ecrit:
The current page replacement policy in gnumach/vm_page is documented within
the source. It describes the policy of preferring page out of external pages
(mmap) over internal pages (anonymous memory) in order to minimise the use
of the default pager which is described as unreliable.
As in: the kernel does not want to trust it. That's not saying that the
current implementation is unreliable, just that gnumach itself doesn't
want to have to rely on it.
This is the comment copied from gnumach/vm_page.c:
/*
* Page cache queue.
*
* XXX The current implementation hardcodes a preference to evict external
* pages first and keep internal ones as much as possible. This is because
* the Hurd default pager implementation suffers from bugs that can easily
* cause the system to freeze.
*/
I'd welcome feedback on whether 'My_patch' should be submitted for
consideration.
It's hard to say without seeing it.
I was hoping for feedback on the direction rather than the detail but I
can see that making sense of what I described would be a lot simpler by
examining the code changes. I'll try and get the patch series sent to
the list soon.
Mike.