| From | David Howells <> | Subject | Re: [PATCH v7 2/8] iov_iter: Add a function to extract a page list from an iterator | Date | Mon, 23 Jan 2023 12:00:46 +0000 |
| |
David Howells <dhowells@redhat.com> wrote:
> > How does this work align with the goal of no longer using FOLL_GET for > > O_DIRECT? We should get rid of any FOLL_GET usage for accessing page content. > > Would that run the risk of changes being made by the child being visible to > the a DIO write if the parent changes the buffer first? > > > PARENT CHILD > ====== ===== > start-DIO-write > fork() = pid fork() = 0 > alter-buffer > CoW happens > page copied original page retained > alter-buffer > <DMA-happens>
Ah, I think I might have got the wrong end of the stick. A pinned page is *always* copied on fork() if I understand copy_present_pte() correctly.
David
|