diff options
author | Michael Kerrisk <mtk.manpages@gmail.com> | 2016-03-15 16:25:07 +1300 |
---|---|---|
committer | Michael Kerrisk <mtk.manpages@gmail.com> | 2016-03-15 16:41:24 +1300 |
commit | 38931a4d3c262750313029a4144fb9ff47f37ff7 (patch) | |
tree | 189e3c512f9b234ef22cde244b9108bdbf7ee4a6 | |
parent | 33fd2d00f1d80381bb1389ff773c6fc91c88ce49 (diff) | |
download | man-pages-38931a4d3c262750313029a4144fb9ff47f37ff7.tar.gz |
iopl.2: Permissions are not inherited across fork(2) or preserved on execve(2)
See https://bugzilla.kernel.org/show_bug.cgi?id=99901
Reported-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
-rw-r--r-- | man2/iopl.2 | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/man2/iopl.2 b/man2/iopl.2 index 93dca3f161..86f524266f 100644 --- a/man2/iopl.2 +++ b/man2/iopl.2 @@ -53,10 +53,11 @@ In addition to granting unrestricted I/O port access, running at a higher I/O privilege level also allows the process to disable interrupts. This will probably crash the system, and is not recommended. -Permissions are inherited by +Permissions are not inherited by the child process created by .BR fork (2) -and -.BR execve (2). +and are not preserved across +.BR execve (2) +(but see NOTES). The I/O privilege level for a normal process is 0. @@ -97,6 +98,16 @@ Glibc2 has a prototype both in and in .IR <sys/perm.h> . Avoid the latter, it is available on i386 only. + +Prior to Linux 3.7, +on some architectures (such as i386), permissions +.I were +inherited by the child produced by +.BR fork (2) +and were preserved across +.BR execve (2). +This behavior was inadvertently changed in Linux 3.7, +and won't be reinstated. .SH SEE ALSO .BR ioperm (2), .BR outb (2), |