Re: [PATCH] mm: Respect FOLL_FORCE/FOLL_COW for thp

From: Keno Fischer
Date: Thu Jan 05 2017 - 16:07:01 EST


>> @@ -783,7 +793,7 @@ struct page *follow_devmap_pmd(struct vm_area_struct *vma, unsigned long addr,
>>
>> assert_spin_locked(pmd_lockptr(mm, pmd));
>>
>> - if (flags & FOLL_WRITE && !pmd_write(*pmd))
>> + if (flags & FOLL_WRITE && !can_follow_write_pmd(*pmd, flags))
>> return NULL;
>
> I don't think this part is needed: once we COW devmap PMD entry, we split
> it into PTE table, so IIUC we never get here with PMD.
>
> Maybe we should WARN_ONCE() if have FOLL_COW here.

Sounds good to me. As I said, I don't have a testcase for this code
path, I just noticed the same pattern.
Will send an updated patch with the WARN_ONCE there.