Thread (8 messages) flat view 8 messages, 2 authors, 2021-02-09

Re: [PATCH v3 5/5] hugetlb: Do early cow when page pinned on src mm

From: Peter Xu <peterx@redhat.com>
Date: 2021-02-09 02:59:12
Also in: lkml

On Mon, Feb 08, 2021 at 04:09:26PM -0800, Mike Kravetz wrote:
On 2/5/21 8:54 AM, Peter Xu wrote:
quoted
This is the last missing piece of the COW-during-fork effort when there're
pinned pages found.  One can reference 70e806e4e645 ("mm: Do early cow for
pinned pages during fork() for ptes", 2020-09-27) for more information, since
we do similar things here rather than pte this time, but just for hugetlb.
Thanks for all the changes, the patch looks much better.

I did not look at 70e806e4e645 in detail until now.  That commit had the
'write protect trick' which was removed in subsequent commits.  It took me
a bit of git history tracking to figure out the state of that code today and
the reasons for the subsequent changes.  I guess that was a good way to
educate me. :) 
Thanks for looking into those details.  I didn't expect that to happen since
after Jason's rework with 57efa1fe5957 ("mm/gup: prevent gup_fast from racing
with COW during fork", 2020-12-15) we can ignore the whole wr-protect idea as a
whole.  I referenced 70e806e4e645 more for the idea of why we do that, and also
copy_present_page() on how it is generally implemented.  That gup-fast race is
definitely tricky on its own.
quoted
Signed-off-by: Peter Xu <peterx@redhat.com>
---
 mm/hugetlb.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 62 insertions(+), 4 deletions(-)
Reviewed-by: Mike Kravetz <redacted>
Thanks!

I'll post a new version very soon with your r-b, and also a compile warning
fixed in the other patch as reported by Gal.

-- 
Peter Xu

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help