move seccomp from /proc to a prctl
This reduces the memory footprint and it enforces that only the current task can enable seccomp on itself (this is a requirement for a strightforward [modulo preempt ;) ] TIF_NOTSC implementation). Signed-off-by: Andrea Arcangeli <andrea@cpushare.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
be0ef957c9
commit
1d9d02feee
@ -4,8 +4,6 @@
|
||||
|
||||
#ifdef CONFIG_SECCOMP
|
||||
|
||||
#define NR_SECCOMP_MODES 1
|
||||
|
||||
#include <linux/thread_info.h>
|
||||
#include <asm/seccomp.h>
|
||||
|
||||
@ -23,6 +21,9 @@ static inline int has_secure_computing(struct thread_info *ti)
|
||||
return unlikely(test_ti_thread_flag(ti, TIF_SECCOMP));
|
||||
}
|
||||
|
||||
extern long prctl_get_seccomp(void);
|
||||
extern long prctl_set_seccomp(unsigned long);
|
||||
|
||||
#else /* CONFIG_SECCOMP */
|
||||
|
||||
typedef struct { } seccomp_t;
|
||||
@ -34,6 +35,16 @@ static inline int has_secure_computing(struct thread_info *ti)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline long prctl_get_seccomp(void)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline long prctl_set_seccomp(unsigned long arg2)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
#endif /* CONFIG_SECCOMP */
|
||||
|
||||
#endif /* _LINUX_SECCOMP_H */
|
||||
|
Reference in New Issue
Block a user