On 22.12.21 00:59, Jason Gunthorpe wrote:
On Tue, Dec 21, 2021 at 06:40:30PM +0100, David Hildenbrand wrote:
quoted
What adds complexity to correctly maintain the "exclusive" state are at
least:
* KSM (might be harder, have to think about it)
I know little about it, but isn't KSM like fork where it is trying to
WP pages with the intention of copying them? Shouldn't KSM completely
reject WP'ing a page that is under any kind of writable GUP?
I think KSM will, similar to fork(), always have to try removing
PageAnonExclusive() while synchronizing against concurrent GUP pins. If
that fails, the page cannot be converted to KSM and consequently not be
shared.
That will need some rework of KSM AFAIU, but shouldn't be impossible to do.
--
Thanks,
David / dhildenb