linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie@kernel.org>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: "Paul Elliott" <paul.elliott@arm.com>,
	"Peter Zijlstra" <peterz@infradead.org>,
	"Andrew Jones" <drjones@redhat.com>,
	"Amit Kachhap" <amit.kachhap@arm.com>,
	"Vincenzo Frascino" <vincenzo.frascino@arm.com>,
	"Will Deacon" <will@kernel.org>,
	linux-arch@vger.kernel.org, "Marc Zyngier" <maz@kernel.org>,
	"Eugene Syromiatnikov" <esyr@redhat.com>,
	"Szabolcs Nagy" <szabolcs.nagy@arm.com>,
	"Dave Martin" <Dave.Martin@arm.com>,
	"H.J. Lu" <hjl.tools@gmail.com>,
	"Yu-cheng Yu" <yu-cheng.yu@intel.com>,
	"Kees Cook" <keescook@chromium.org>,
	"Arnd Bergmann" <arnd@arndb.de>, "Jann Horn" <jannh@google.com>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Kristina Martšenko" <kristina.martsenko@arm.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	linux-arm-kernel@lists.infradead.org,
	"Florian Weimer" <fweimer@redhat.com>,
	linux-kernel@vger.kernel.org, "Sudakshina Das" <sudi.das@arm.com>
Subject: Re: [PATCH v4 04/12] arm64: Basic Branch Target Identification support
Date: Mon, 13 Jan 2020 14:00:51 +0000	[thread overview]
Message-ID: <20200113140051.GI3897@sirena.org.uk> (raw)
In-Reply-To: <20200110182800.GI8786@arrakis.emea.arm.com>


[-- Attachment #1.1: Type: text/plain, Size: 1556 bytes --]

On Fri, Jan 10, 2020 at 06:28:00PM +0000, Catalin Marinas wrote:
> On Wed, Dec 11, 2019 at 03:41:58PM +0000, Mark Brown wrote:

> >  /* Additional SPSR bits not exposed in the UABI */
> > +#define PSR_BTYPE_SHIFT		10
> > +
> >  #define PSR_IL_BIT		(1 << 20)
> >  
> > +/* Convenience names for the values of PSTATE.BTYPE */
> > +#define PSR_BTYPE_NONE		(0b00 << PSR_BTYPE_SHIFT)
> > +#define PSR_BTYPE_JC		(0b01 << PSR_BTYPE_SHIFT)
> > +#define PSR_BTYPE_C		(0b10 << PSR_BTYPE_SHIFT)
> > +#define PSR_BTYPE_J		(0b11 << PSR_BTYPE_SHIFT)

> Would these be better placed in the uapi/ptrace.h?

Seems reasonable, they might be useful to virt stuff and they're
part of the architecture so it's not like we might change them.

> > +	/*
> > +	 * BTI note:
> > +	 * The architecture does not guarantee that SPSR.BTYPE is zero
> > +	 * on taking an SVC, so we could return to userspace with a
> > +	 * non-zero BTYPE after the syscall.

> On page 2580 of the ARM ARM there is a statement that "any instruction
> other than BR, ..." sets BTYPE to 0. Wouldn't SVC fall into the same
> category?

I think what Dave was referring to there is that (unless I'm
misreading things) that section of the ARM says that BTYPE is set
at the end of the execution of the instruction but since SVC is
specified as generating an exception that means that when we
enter the kernel the instruction won't have ended yet and we
still have the BTYPE from the previous instruction.

> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>

Thanks.

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2020-01-13 14:01 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-11 15:41 [PATCH v4 00/12] arm64: ARMv8.5-A: Branch Target Identification support Mark Brown
2019-12-11 15:41 ` [PATCH v4 01/12] ELF: UAPI and Kconfig additions for ELF program properties Mark Brown
2020-01-14 15:03   ` Catalin Marinas
2019-12-11 15:41 ` [PATCH v4 02/12] ELF: Add ELF program property parsing support Mark Brown
2020-01-14 16:34   ` Catalin Marinas
2020-01-14 17:28     ` Mark Brown
2019-12-11 15:41 ` [PATCH v4 03/12] mm: Reserve asm-generic prot flag 0x10 for arch use Mark Brown
2019-12-12 10:48   ` Catalin Marinas
2019-12-12 16:16     ` Mark Brown
2019-12-11 15:41 ` [PATCH v4 04/12] arm64: Basic Branch Target Identification support Mark Brown
2020-01-10 18:28   ` Catalin Marinas
2020-01-13 14:00     ` Mark Brown [this message]
2019-12-11 15:41 ` [PATCH v4 05/12] elf: Allow arch to tweak initial mmap prot flags Mark Brown
2020-01-14 16:38   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 06/12] arm64: elf: Enable BTI at exec based on ELF program properties Mark Brown
2020-01-14 17:33   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 07/12] arm64: BTI: Decode BYTPE bits when printing PSTATE Mark Brown
2020-01-14 17:34   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 08/12] arm64: unify native/compat instruction skipping Mark Brown
2020-01-13 16:43   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 09/12] arm64: traps: Shuffle code to eliminate forward declarations Mark Brown
2020-01-14 17:35   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 10/12] arm64: BTI: Reset BTYPE when skipping emulated instructions Mark Brown
2020-01-14 17:36   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 11/12] KVM: " Mark Brown
2020-01-14 17:36   ` Catalin Marinas
2019-12-11 15:42 ` [PATCH v4 12/12] arm64: mm: Display guarded pages in ptdump Mark Brown
2020-01-14 17:37   ` Catalin Marinas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200113140051.GI3897@sirena.org.uk \
    --to=broonie@kernel.org \
    --cc=Dave.Martin@arm.com \
    --cc=amit.kachhap@arm.com \
    --cc=arnd@arndb.de \
    --cc=catalin.marinas@arm.com \
    --cc=drjones@redhat.com \
    --cc=esyr@redhat.com \
    --cc=fweimer@redhat.com \
    --cc=hjl.tools@gmail.com \
    --cc=jannh@google.com \
    --cc=keescook@chromium.org \
    --cc=kristina.martsenko@arm.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=paul.elliott@arm.com \
    --cc=peterz@infradead.org \
    --cc=richard.henderson@linaro.org \
    --cc=sudi.das@arm.com \
    --cc=szabolcs.nagy@arm.com \
    --cc=tglx@linutronix.de \
    --cc=vincenzo.frascino@arm.com \
    --cc=will@kernel.org \
    --cc=yu-cheng.yu@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).