diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2007-10-18 06:05:58 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-18 17:37:23 -0400 |
commit | 7058cb02ddab4bce70a46e519804fccb7ac0a060 (patch) | |
tree | c0d3bfc395472a2a8c9098227739892a9090b3a0 /Documentation | |
parent | 8ada720d89d678eb5a09d3048a5e9a35c526800c (diff) |
sysctl: deprecate sys_sysctl in a user space visible fashion.
After adding checking to register_sysctl_table and finding a whole new set
of bugs. Missed by countless code reviews and testers I have finally lost
patience with the binary sysctl interface.
The binary sysctl interface has been sort of deprecated for years and
finding a user space program that uses the syscall is more difficult then
finding a needle in a haystack. Problems continue to crop up, with the in
kernel implementation. So since supporting something that no one uses is
silly, deprecate sys_sysctl with a sufficient grace period and notice that
the handful of user space applications that care can be fixed or replaced.
The /proc/sys sysctl interface that people use will continue to be
supported indefinitely.
This patch moves the tested warning about sysctls from the path where
sys_sysctl to a separate path called from both implementations of
sys_sysctl, and it adds a proper entry into
Documentation/feature-removal-schedule.
Allowing us to revisit this in a couple years time and actually kill
sys_sysctl.
[lethal@linux-sh.org: sysctl: Fix syscall disabled build]
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/feature-removal-schedule.txt | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index 280ec06573e6..5b25162cd9a4 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -82,6 +82,41 @@ Who: Dominik Brodowski <linux@brodo.de> | |||
82 | 82 | ||
83 | --------------------------- | 83 | --------------------------- |
84 | 84 | ||
85 | What: sys_sysctl | ||
86 | When: September 2010 | ||
87 | Option: CONFIG_SYSCTL_SYSCALL | ||
88 | Why: The same information is available in a more convenient from | ||
89 | /proc/sys, and none of the sysctl variables appear to be | ||
90 | important performance wise. | ||
91 | |||
92 | Binary sysctls are a long standing source of subtle kernel | ||
93 | bugs and security issues. | ||
94 | |||
95 | When I looked several months ago all I could find after | ||
96 | searching several distributions were 5 user space programs and | ||
97 | glibc (which falls back to /proc/sys) using this syscall. | ||
98 | |||
99 | The man page for sysctl(2) documents it as unusable for user | ||
100 | space programs. | ||
101 | |||
102 | sysctl(2) is not generally ABI compatible to a 32bit user | ||
103 | space application on a 64bit and a 32bit kernel. | ||
104 | |||
105 | For the last several months the policy has been no new binary | ||
106 | sysctls and no one has put forward an argument to use them. | ||
107 | |||
108 | Binary sysctls issues seem to keep happening appearing so | ||
109 | properly deprecating them (with a warning to user space) and a | ||
110 | 2 year grace warning period will mean eventually we can kill | ||
111 | them and end the pain. | ||
112 | |||
113 | In the mean time individual binary sysctls can be dealt with | ||
114 | in a piecewise fashion. | ||
115 | |||
116 | Who: Eric Biederman <ebiederm@xmission.com> | ||
117 | |||
118 | --------------------------- | ||
119 | |||
85 | What: a.out interpreter support for ELF executables | 120 | What: a.out interpreter support for ELF executables |
86 | When: 2.6.25 | 121 | When: 2.6.25 |
87 | Files: fs/binfmt_elf.c | 122 | Files: fs/binfmt_elf.c |