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

From: Michael S. Tsirkin
Date: Thu Nov 03 2005 - 10:11:21 EST


Quoting Hugh Dickins <hugh@xxxxxxxxxxx>:
> > All existing drivers that set VM_DONTCOPY also set VM_IO.
> > So lets just disable playing with these flags from madvise if VM_IO is set.
> > There's no reason I can see that the driver should have a say
> > on what the process does with its own (non-IO) memory.
> > Sounds good?
>
> You're then saying that a process cannot set VM_DONTCOPY on a VM_IO
> area to prevent the first child getting the area, but clear it after
> so the next child does get a copy of the area. I think it'd be wrong
> (surprising) to limit the functionality in that way.

Okay, I guess. I am just trying to avoid more VM_ flags.
Cant we get rid of the last requirement, then?
I dont see why the driver should have a say on what the process does with its
own memory.

> > By the way, as a separate issue, we still have a problem with DMA to pages
> > which are *needed* by the child process. What do you think about VM_COPY
> > (to do the old unix thing of actually copying the page instead of
> > setting the COW flag) and a matching madvise call to set/clear it?
>
> I don't much want to add another path into copy_pte_range, actually
> copying pages. If the process really wants DMA into such areas,
> then it should contain the code for the child to COW them itself?
>
> Hugh

How do you do that, say, for a stack page, or global data section?

--
MST
-
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/