Re: [RFC 5/8] mm: Add new flag VM_CDM for coherent device memory

From: Dave Hansen
Date: Mon Oct 24 2016 - 14:03:42 EST


On 10/24/2016 10:38 AM, Dave Hansen wrote:
> On 10/23/2016 09:31 PM, Anshuman Khandual wrote:
>> > VMAs containing coherent device memory should be marked with VM_CDM. These
>> > VMAs need to be identified in various core kernel paths and this new flag
>> > will help in this regard.
> ... and it's sticky? So if a VMA *ever* has one of these funky pages in
> it, it's stuck being VM_CDM forever? Never to be merged with other
> VMAs? Never to see the light of autonuma ever again?

Urg, this is even worse than I suspected.

Does this handle shared pages (like the page cache mode you call out as
a requirement) where the "cdm" page is faulted into one process VMA, but
it was allocated against another?

Can't that give you a "cdm" page mapped into a non-VM_CDM VMA? Or, a
VM_CDM VMA with no "cdm" pages in it?