Re: [PATCHv3 03/17] mm/ksm: Do not merge pages with different KeyIDs

From: Kirill A. Shutemov
Date: Wed Jun 13 2018 - 16:41:42 EST

On Wed, Jun 13, 2018 at 08:35:46PM +0000, Dave Hansen wrote:
> On 06/13/2018 01:31 PM, Kirill A. Shutemov wrote:
> >> What actually happens without this patch in place?
> >
> > One of processes would get the page mapped with wrong KeyID and see
> > garbage.
> OK, but what about two pages with the same KeyID? It's actually totally
> possible for KSM to determine that two pages have the same plaintext and
> merge them. Why don't we do that?

That's exactly what we do :)

> > We setup mapping according to KeyID in vma->vm_page_prot.
> Then why do we bother with page_keyid() and the page_ext stuff?

VMA is not always around.

Using KeyID in vma->vm_page_prot we don't need to change anything in PTE
setup functions. It just works.

Kirill A. Shutemov