futex: Mark get_robust_list as deprecated
authorKees Cook <keescook@chromium.org>
Fri, 23 Mar 2012 19:08:55 +0000 (12:08 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 29 Mar 2012 09:37:17 +0000 (11:37 +0200)
Notify get_robust_list users that the syscall is going away.

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Kees Cook <keescook@chromium.org>
Cc: Randy Dunlap <rdunlap@xenotime.net>
Cc: Darren Hart <dvhart@linux.intel.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Serge E. Hallyn <serge.hallyn@canonical.com>
Cc: kernel-hardening@lists.openwall.com
Cc: spender@grsecurity.net
Link: http://lkml.kernel.org/r/20120323190855.GA27213@www.outflux.net
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Documentation/feature-removal-schedule.txt
kernel/futex.c
kernel/futex_compat.c

index 0cad4803ffacd2c021f33407f21e9ead735c9bac..c1be8066ea5914c33e9a7aacbfee66f8455741b2 100644 (file)
@@ -529,3 +529,13 @@ When:      3.5
 Why:   The old kmap_atomic() with two arguments is deprecated, we only
        keep it for backward compatibility for few cycles and then drop it.
 Who:   Cong Wang <amwang@redhat.com>
+
+----------------------------
+
+What:  get_robust_list syscall
+When:  2013
+Why:   There appear to be no production users of the get_robust_list syscall,
+       and it runs the risk of leaking address locations, allowing the bypass
+       of ASLR. It was only ever intended for debugging, so it should be
+       removed.
+Who:   Kees Cook <keescook@chromium.org>
index d701be57c423ffbec80ae246c8f194d14f62aa39..e2b0fb9a0b3b3d0d5871ee37bf08618a6bf052e7 100644 (file)
@@ -2449,6 +2449,8 @@ SYSCALL_DEFINE3(get_robust_list, int, pid,
        if (!futex_cmpxchg_enabled)
                return -ENOSYS;
 
+       WARN_ONCE(1, "deprecated: get_robust_list will be deleted in 2013.\n");
+
        rcu_read_lock();
 
        ret = -ESRCH;
index a9642d528630260749f760f3c02bc8164f51af2b..83e368b005fc6eb001a2babe7a48d80dcb21037e 100644 (file)
@@ -142,6 +142,8 @@ compat_sys_get_robust_list(int pid, compat_uptr_t __user *head_ptr,
        if (!futex_cmpxchg_enabled)
                return -ENOSYS;
 
+       WARN_ONCE(1, "deprecated: get_robust_list will be deleted in 2013.\n");
+
        rcu_read_lock();
 
        ret = -ESRCH;