linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] proc: Provide details on indirect branch speculation
@ 2020-11-06  2:10 Anand K Mistry
  2020-11-06  6:41 ` Stephen Rothwell
  0 siblings, 1 reply; 2+ messages in thread
From: Anand K Mistry @ 2020-11-06  2:10 UTC (permalink / raw)
  To: linux-fsdevel
  Cc: asteinhauser, sfr, rppt, joelaf, tglx, Anand K Mistry,
	Alexey Dobriyan, Alexey Gladkov, Andrew Morton, Jonathan Corbet,
	Kees Cook, Mauro Carvalho Chehab, Michal Hocko, Peter Zijlstra,
	Randy Dunlap, linux-doc, linux-kernel

Similar to speculation store bypass, show information about the indirect
branch speculation mode of a task in /proc/$pid/status.

Signed-off-by: Anand K Mistry <amistry@google.com>
---

Changes in v2:
- Remove underscores from field name to workaround documentation issue

 Documentation/filesystems/proc.rst |  2 ++
 fs/proc/array.c                    | 28 ++++++++++++++++++++++++++++
 2 files changed, 30 insertions(+)

diff --git a/Documentation/filesystems/proc.rst b/Documentation/filesystems/proc.rst
index 533c79e8d2cd..531edaf07924 100644
--- a/Documentation/filesystems/proc.rst
+++ b/Documentation/filesystems/proc.rst
@@ -210,6 +210,7 @@ read the file /proc/PID/status::
   NoNewPrivs:     0
   Seccomp:        0
   Speculation_Store_Bypass:       thread vulnerable
+  SpeculationIndirectBranch:      conditional enabled
   voluntary_ctxt_switches:        0
   nonvoluntary_ctxt_switches:     1
 
@@ -292,6 +293,7 @@ It's slow but very precise.
  NoNewPrivs                  no_new_privs, like prctl(PR_GET_NO_NEW_PRIV, ...)
  Seccomp                     seccomp mode, like prctl(PR_GET_SECCOMP, ...)
  Speculation_Store_Bypass    speculative store bypass mitigation status
+ SpeculationIndirectBranch   indirect branch speculation mode
  Cpus_allowed                mask of CPUs on which this process may run
  Cpus_allowed_list           Same as previous, but in "list format"
  Mems_allowed                mask of memory nodes allowed to this process
diff --git a/fs/proc/array.c b/fs/proc/array.c
index 65ec2029fa80..014c1859554d 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -368,6 +368,34 @@ static inline void task_seccomp(struct seq_file *m, struct task_struct *p)
 		seq_puts(m, "vulnerable");
 		break;
 	}
+
+	seq_puts(m, "\nSpeculationIndirectBranch:\t");
+	switch (arch_prctl_spec_ctrl_get(p, PR_SPEC_INDIRECT_BRANCH)) {
+	case -EINVAL:
+		seq_puts(m, "unsupported");
+		break;
+	case PR_SPEC_NOT_AFFECTED:
+		seq_puts(m, "not affected");
+		break;
+	case PR_SPEC_PRCTL | PR_SPEC_FORCE_DISABLE:
+		seq_puts(m, "conditional force disabled");
+		break;
+	case PR_SPEC_PRCTL | PR_SPEC_DISABLE:
+		seq_puts(m, "conditional disabled");
+		break;
+	case PR_SPEC_PRCTL | PR_SPEC_ENABLE:
+		seq_puts(m, "conditional enabled");
+		break;
+	case PR_SPEC_ENABLE:
+		seq_puts(m, "always enabled");
+		break;
+	case PR_SPEC_DISABLE:
+		seq_puts(m, "always disabled");
+		break;
+	default:
+		seq_puts(m, "unknown");
+		break;
+	}
 	seq_putc(m, '\n');
 }
 
-- 
2.29.1.341.ge80a0c044ae-goog


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] proc: Provide details on indirect branch speculation
  2020-11-06  2:10 [PATCH v2] proc: Provide details on indirect branch speculation Anand K Mistry
@ 2020-11-06  6:41 ` Stephen Rothwell
  0 siblings, 0 replies; 2+ messages in thread
From: Stephen Rothwell @ 2020-11-06  6:41 UTC (permalink / raw)
  To: Anand K Mistry
  Cc: linux-fsdevel, asteinhauser, rppt, joelaf, tglx, Alexey Dobriyan,
	Alexey Gladkov, Andrew Morton, Jonathan Corbet, Kees Cook,
	Mauro Carvalho Chehab, Michal Hocko, Peter Zijlstra,
	Randy Dunlap, linux-doc, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 546 bytes --]

Hi Anand,

On Fri,  6 Nov 2020 13:10:43 +1100 Anand K Mistry <amistry@google.com> wrote:
>
> Similar to speculation store bypass, show information about the indirect
> branch speculation mode of a task in /proc/$pid/status.
> 
> Signed-off-by: Anand K Mistry <amistry@google.com>
> ---
> 
> Changes in v2:
> - Remove underscores from field name to workaround documentation issue

I replaced the previous version in linux-next with this today. It fixes
the htmldocs warning from yesterday, thanks.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-11-06  6:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-06  2:10 [PATCH v2] proc: Provide details on indirect branch speculation Anand K Mistry
2020-11-06  6:41 ` Stephen Rothwell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).