Re: Nick's core remove PageReserved broke vmware...

From: Gleb Natapov
Date: Mon Nov 14 2005 - 07:41:47 EST


On Mon, Nov 14, 2005 at 02:34:32PM +0200, Michael S. Tsirkin wrote:
> Quoting Gleb Natapov <gleb@xxxxxxxxxxxxx>:
> > Subject: Re: Nick's core remove PageReserved broke vmware...
> >
> > On Mon, Nov 14, 2005 at 02:25:35PM +0200, Michael S. Tsirkin wrote:
> > > Quoting Hugh Dickins <hugh@xxxxxxxxxxx>:
> > > > Subject: Re: Nick's core remove PageReserved broke vmware...
> > > >
> > > > On Tue, 8 Nov 2005, Michael S. Tsirkin wrote:
> > > > >
> > > > > Hugh, did you have something like the following in mind
> > > > > (this is only boot-tested and only on x86-64)?
> > > >
> > > > Yes, that looks pretty good to me, a few comments below.
> > > > Only another twenty or so architectures to go ;)
> > >
> > > There's one thing that I have thought about: what happens
> > > if I set DONTFORK on a page which already has COW set
> > > (e.g. after fork)?
> > >
> > > It seems that the right thing would be to force a page copy -
> > > otherwise the page can get copied on write.
> >
> > I thought about it. It should not happen for OpenIB since get_user_pages
> > will break COW for us and I don't think we should complicate DONTFORK
> > implementation by doing break during madvise().
>
> Hmm, I assumed we call madvise before driver does get_user_pages,
> otherwise an application could fork in between.
> Should we worry about this?
>
OK, we set VM_DONTFORK on vma and than driver calls get_user_pages()
that actually do page table walking and COW breaking. Or do I miss
something here?

--
Gleb.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/