[openib-general] Re: madvise MADV_DONTFORK/MADV_DOFORK
Michael S. Tsirkin
mst at mellanox.co.il
Mon Feb 13 11:20:46 PST 2006
Quoting Linus Torvalds <torvalds at osdl.org>:
> >
> > Add madvise options to control whether memory range is inherited across fork.
> > Useful e.g. for when hardware is doing DMA from/into these pages.
> >
> > Signed-off-by: Michael S. Tsirkin <mst at mellanox.co.il>
> >
> > - if (mpnt->vm_flags & VM_DONTCOPY) {
> > + if (mpnt->vm_flags & (VM_DONTCOPY | VM_DONTFORK)) {
>
> Why?
>
> That VM_DONTCOPY _is_ DONTFORK.
>
> Don't add a new useless DONTFORK that doesn't have any value.
When this was last discussed, Hugh Dickins said:
> If a driver sets VM_DONTCOPY, it's likely to be because the driver knows it'll
> cause some nastiness (memory corruption, memory leak, lockup...) if it were
> copied. The memory belongs to the driver, it's letting the process have a
> window on it. I don't think we should now let the process overrule it.
Here's a pointer to the relevant discussion:
http://lkml.org/lkml/2005/11/3/112
--
Michael S. Tsirkin
Staff Engineer, Mellanox Technologies
More information about the general
mailing list