Re: [PATCH] madvise.2: MADV_WIPEONFORK affects semantics

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Jakub (and Adam),

On Tue, 28 Apr 2020 at 20:09, Jakub Wilk <jwilk@xxxxxxxxx> wrote:
>
> Hi Adam!
>
> * Adam Langley <agl@xxxxxxxxxx>, 2020-04-28, 17:40:
> > These
> > .I advice
> > values do not influence the semantics of the application
> > (except in the case of
> >-.BR MADV_DONTNEED ),
> >+.BR MADV_DONTNEED
> >+and
> >+.BR MADV_WIPEONFORK ),
> > but may influence its performance.
>
> This sentence is in the "Conventional advice value" subsection, which
> defines only MADV_NORMAL, MADV_RANDOM, MADV_SEQUENTIAL, MADV_WILLNEED,
> and MADV_DONTNEED.

(Good catch.)

> MADV_WIPEONFORK is defined in the "Linux-specific advice values"
> subsection, which already notes that "some of these operations change
> the semantics of memory accesses".

<nod>

> (Perhaps s/some/most/ would be better
> wording.)

Perhaps you are right. Here's my take:

Do change memory semantics:
MADV_REMOVE
MADV_DONTFORK / MADV_DOFORK
MADV_HWPOISON
MADV_FREE
MADV_WIPEONFORK

Don't change memory semantics:
MADV_MERGEABLE / MADV_UNMERGEABLE
MADV_SOFT_OFFLINE
MADV_HUGEPAGE / MADV_NOHUGEPAGE
MADV_DONTDUMP / MADV_DODUMP

Do you agree?

"Some" is perhaps a little loose, but perhaps "most" is overstating
it, so I'm not quite sure what to do here. Perhaps ad a line to each
of the operations in the first category noting that the operations
change memory semantics. THoughts?

Cheers,

Michael

-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/



[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux