mprotect.2: Various fixes to Eugene Syromyatnikov's text

Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
This commit is contained in:
Michael Kerrisk 2016-11-20 21:43:44 +01:00
parent be232513a2
commit d88d01c6b8
1 changed files with 23 additions and 26 deletions

View File

@ -72,19 +72,20 @@ The memory can be executed.
.TP
.BR PROT_SEM " (since Linux 2.5.7)"
The memory can be used for atomic operations.
It was introduced as part of
This flag was introduced as part of the
.BR futex (2)
implementation (in order to guarantee ability to perform atomic
operations required by its commands such as
implementation (in order to guarantee the ability to perform atomic
operations required by commands such as
.BR FUTEX_WAIT ),
but not actually used in any currently supported architecture so far.
.\" aba46c5027cb59d98052231b36efcbbde9c77a1d ef3d3246a0d06be622867d21af25f997aeeb105f
but is not currently used in on any architecture.
.TP
.BR PROT_SAO " (since Linux 2.6.26)"
.\" commit aba46c5027cb59d98052231b36efcbbde9c77a1d
.\" commit ef3d3246a0d06be622867d21af25f997aeeb105f
The memory should have strong access ordering.
This feature is specific to
PowerPC architecture
(version 2.06 of architecture specification adds SAO CPU feature,
the PowerPC architecture
(version 2.06 of the architecture specification adds the SAO CPU feature,
and it is available on POWER 7 or PowerPC A2, for example).
.PP
Additionally (since Linux 2.6.0),
@ -96,17 +97,22 @@ can have one of the following flags set:
.\" mm->def_flags | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC;
.\" And calc_vm_flag_bits converts only GROWSDOWN/DENYWRITE/LOCKED.
.B PROT_GROWSUP
Apply protection mode up to the end of the mapping which grows up
(it should be a stack segment on HP PA-RISC,
since there are no other ways to map a segment with
.B VM_GROWSUP
even if architecture has support for it.)
Apply the protection mode up to the end of a mapping
that grows upwards.
(Such mappings are created for the stack area on
architectures\(emfor example, HP-PARISC\(emthat
have an upwardly growing stack.)
.\" The VMA is one that was marked with VM_GROWSUP by the kernel
.\" when the stack was created. Note that (unlike VM_GROWSDOWN),
.\" there is no mmap() flag (analogous to MAP_GROWSDOWN) for
.\" creating a VMA that is marked VM_GROWSUP.
.TP
.B PROT_GROWSDOWN
Apply protection mode down to the beginning of the mapping which grows down
(it should be stack segment or mapped with
Apply the protection mode down to the beginning of a mapping
that grows downward
(which should be a stack segment or a segment mapped with the
.B MAP_GROWSDOWN
flag set.)
flag set).
.PP
Like
.BR mprotect (),
@ -164,22 +170,13 @@ were specified in
.IR prot .
.TP
.BR EINVAL
Invalid (other than
.BR PROT_READ ,
.BR PROT_WRITE ,
.BR PROT_EXEC ,
.BR PROT_SEM ,
.BR PROT_SAO
(on PowerPC only),
.BR PROT_GROWSUP ,
.BR PROT_GROWSDOWN )
flags specified in
Invalid flags specified in
.IR prot .
.TP
.BR EINVAL
(PowerPC architecture)
.B PROT_SAO
specified in
was specified in
.IR prot ,
but SAO hardware feature is not available.
.TP