summaryrefslogtreecommitdiff
path: root/fs/proc
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2018-07-25 17:34:32 +0100
committerMark Brown <broonie@kernel.org>2018-07-25 17:34:32 +0100
commit606b3effb9ce2ab6f67eeecace381c701d411ecf (patch)
tree2f9478b4cdd0703734c76570f61309b304de0933 /fs/proc
parent1c6a1d5ae62dbaec8922761f56332e6e830b32a4 (diff)
parent762b585c492fedda1b0bc4c6d0a867307bf7cd0f (diff)
Merge tag 'v4.4.144' into linux-linaro-lsk-v4.4
This is the 4.4.144 stable release
Diffstat (limited to 'fs/proc')
-rw-r--r--fs/proc/array.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/fs/proc/array.c b/fs/proc/array.c
index b6c00ce0e29e..cb71cbae606d 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -79,6 +79,7 @@
#include <linux/delayacct.h>
#include <linux/seq_file.h>
#include <linux/pid_namespace.h>
+#include <linux/prctl.h>
#include <linux/ptrace.h>
#include <linux/tracehook.h>
#include <linux/string_helpers.h>
@@ -332,6 +333,31 @@ static inline void task_seccomp(struct seq_file *m, struct task_struct *p)
#ifdef CONFIG_SECCOMP
seq_printf(m, "Seccomp:\t%d\n", p->seccomp.mode);
#endif
+ seq_printf(m, "\nSpeculation_Store_Bypass:\t");
+ switch (arch_prctl_spec_ctrl_get(p, PR_SPEC_STORE_BYPASS)) {
+ case -EINVAL:
+ seq_printf(m, "unknown");
+ break;
+ case PR_SPEC_NOT_AFFECTED:
+ seq_printf(m, "not vulnerable");
+ break;
+ case PR_SPEC_PRCTL | PR_SPEC_FORCE_DISABLE:
+ seq_printf(m, "thread force mitigated");
+ break;
+ case PR_SPEC_PRCTL | PR_SPEC_DISABLE:
+ seq_printf(m, "thread mitigated");
+ break;
+ case PR_SPEC_PRCTL | PR_SPEC_ENABLE:
+ seq_printf(m, "thread vulnerable");
+ break;
+ case PR_SPEC_DISABLE:
+ seq_printf(m, "globally mitigated");
+ break;
+ default:
+ seq_printf(m, "vulnerable");
+ break;
+ }
+ seq_putc(m, '\n');
}
static inline void task_context_switch_counts(struct seq_file *m,