diff options
author | Fabian Frederick <fabf@skynet.be> | 2014-04-03 17:48:25 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-03 19:21:05 -0400 |
commit | 6af9f7bf3c399e0ab1eee048e13572c6d4e15fe9 (patch) | |
tree | 1d298fe98692134505d10f2d4d7fc0f9c6494ad1 | |
parent | e3a0cfdc8c8904236f91a506c1e760b0d60dd918 (diff) |
sys_sysfs: Add CONFIG_SYSFS_SYSCALL
sys_sysfs is an obsolete system call no longer supported by libc.
- This patch adds a default CONFIG_SYSFS_SYSCALL=y
- Option can be turned off in expert mode.
- cond_syscall added to kernel/sys_ni.c
[akpm@linux-foundation.org: tweak Kconfig help text]
Signed-off-by: Fabian Frederick <fabf@skynet.be>
Cc: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | fs/filesystems.c | 2 | ||||
-rw-r--r-- | init/Kconfig | 10 | ||||
-rw-r--r-- | kernel/sys_ni.c | 1 |
3 files changed, 13 insertions, 0 deletions
diff --git a/fs/filesystems.c b/fs/filesystems.c index 92567d95ba6a..5797d45a78cb 100644 --- a/fs/filesystems.c +++ b/fs/filesystems.c | |||
@@ -121,6 +121,7 @@ int unregister_filesystem(struct file_system_type * fs) | |||
121 | 121 | ||
122 | EXPORT_SYMBOL(unregister_filesystem); | 122 | EXPORT_SYMBOL(unregister_filesystem); |
123 | 123 | ||
124 | #ifdef CONFIG_SYSFS_SYSCALL | ||
124 | static int fs_index(const char __user * __name) | 125 | static int fs_index(const char __user * __name) |
125 | { | 126 | { |
126 | struct file_system_type * tmp; | 127 | struct file_system_type * tmp; |
@@ -199,6 +200,7 @@ SYSCALL_DEFINE3(sysfs, int, option, unsigned long, arg1, unsigned long, arg2) | |||
199 | } | 200 | } |
200 | return retval; | 201 | return retval; |
201 | } | 202 | } |
203 | #endif | ||
202 | 204 | ||
203 | int __init get_filesystem_list(char *buf) | 205 | int __init get_filesystem_list(char *buf) |
204 | { | 206 | { |
diff --git a/init/Kconfig b/init/Kconfig index d56cb03c1b49..e45cc62904b3 100644 --- a/init/Kconfig +++ b/init/Kconfig | |||
@@ -1290,6 +1290,16 @@ config UID16 | |||
1290 | help | 1290 | help |
1291 | This enables the legacy 16-bit UID syscall wrappers. | 1291 | This enables the legacy 16-bit UID syscall wrappers. |
1292 | 1292 | ||
1293 | config SYSFS_SYSCALL | ||
1294 | bool "Sysfs syscall support" if EXPERT | ||
1295 | default y | ||
1296 | ---help--- | ||
1297 | sys_sysfs is an obsolete system call no longer supported in libc. | ||
1298 | Note that disabling this option is more secure but might break | ||
1299 | compatibility with some systems. | ||
1300 | |||
1301 | If unsure say Y here. | ||
1302 | |||
1293 | config SYSCTL_SYSCALL | 1303 | config SYSCTL_SYSCALL |
1294 | bool "Sysctl syscall support" if EXPERT | 1304 | bool "Sysctl syscall support" if EXPERT |
1295 | depends on PROC_SYSCTL | 1305 | depends on PROC_SYSCTL |
diff --git a/kernel/sys_ni.c b/kernel/sys_ni.c index 7078052284fd..74395a95b7e9 100644 --- a/kernel/sys_ni.c +++ b/kernel/sys_ni.c | |||
@@ -146,6 +146,7 @@ cond_syscall(sys_io_destroy); | |||
146 | cond_syscall(sys_io_submit); | 146 | cond_syscall(sys_io_submit); |
147 | cond_syscall(sys_io_cancel); | 147 | cond_syscall(sys_io_cancel); |
148 | cond_syscall(sys_io_getevents); | 148 | cond_syscall(sys_io_getevents); |
149 | cond_syscall(sys_sysfs); | ||
149 | cond_syscall(sys_syslog); | 150 | cond_syscall(sys_syslog); |
150 | cond_syscall(sys_process_vm_readv); | 151 | cond_syscall(sys_process_vm_readv); |
151 | cond_syscall(sys_process_vm_writev); | 152 | cond_syscall(sys_process_vm_writev); |