linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] arm64: bti: Fix support for userspace only BTI
@ 2020-05-12 11:39 Mark Brown
  2020-05-12 17:40 ` Will Deacon
  0 siblings, 1 reply; 3+ messages in thread
From: Mark Brown @ 2020-05-12 11:39 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon; +Cc: Mark Brown, linux-arm-kernel

When setting PTE_MAYBE_GP we check system_supports_bti() but this is
true for systems where only CONFIG_BTI is set causing us to enable BTI
on some kernel text. Add an extra check for the kernel mode option,
using an ifdef due to line length.

Fixes: c8027285e366 (arm64: Set GP bit in kernel page tables to enable BTI for the kernel)
Signed-off-by: Mark Brown <broonie@kernel.org>
---
 arch/arm64/include/asm/pgtable-prot.h | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm64/include/asm/pgtable-prot.h b/arch/arm64/include/asm/pgtable-prot.h
index 310690332896..2e7e0f452301 100644
--- a/arch/arm64/include/asm/pgtable-prot.h
+++ b/arch/arm64/include/asm/pgtable-prot.h
@@ -32,7 +32,15 @@ extern bool arm64_use_ng_mappings;
 #define PTE_MAYBE_NG		(arm64_use_ng_mappings ? PTE_NG : 0)
 #define PMD_MAYBE_NG		(arm64_use_ng_mappings ? PMD_SECT_NG : 0)
 
+/*
+ * If we have userspace only BTI we don't want to mark kernel pages
+ * guarded even if the system does support BTI.
+ */
+#ifdef CONFIG_ARM64_BTI_KERNEL
 #define PTE_MAYBE_GP		(system_supports_bti() ? PTE_GP : 0)
+#else
+#define PTE_MAYBE_GP		0
+#endif
 
 #define PROT_DEFAULT		(_PROT_DEFAULT | PTE_MAYBE_NG)
 #define PROT_SECT_DEFAULT	(_PROT_SECT_DEFAULT | PMD_MAYBE_NG)
-- 
2.20.1


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

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

* Re: [PATCH v2] arm64: bti: Fix support for userspace only BTI
  2020-05-12 11:39 [PATCH v2] arm64: bti: Fix support for userspace only BTI Mark Brown
@ 2020-05-12 17:40 ` Will Deacon
  2020-05-12 17:46   ` Will Deacon
  0 siblings, 1 reply; 3+ messages in thread
From: Will Deacon @ 2020-05-12 17:40 UTC (permalink / raw)
  To: Mark Brown, Catalin Marinas; +Cc: Will Deacon, linux-arm-kernel

On Tue, 12 May 2020 12:39:50 +0100, Mark Brown wrote:
> When setting PTE_MAYBE_GP we check system_supports_bti() but this is
> true for systems where only CONFIG_BTI is set causing us to enable BTI
> on some kernel text. Add an extra check for the kernel mode option,
> using an ifdef due to line length.

Applied to arm64 (for-next/bti), thanks!

[1/1] arm64: bti: Fix support for userspace only BTI
      https://git.kernel.org/arm64/c/e70b3b544798

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev

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

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

* Re: [PATCH v2] arm64: bti: Fix support for userspace only BTI
  2020-05-12 17:40 ` Will Deacon
@ 2020-05-12 17:46   ` Will Deacon
  0 siblings, 0 replies; 3+ messages in thread
From: Will Deacon @ 2020-05-12 17:46 UTC (permalink / raw)
  To: Mark Brown, Catalin Marinas; +Cc: linux-arm-kernel

On Tue, May 12, 2020 at 06:40:36PM +0100, Will Deacon wrote:
> On Tue, 12 May 2020 12:39:50 +0100, Mark Brown wrote:
> > When setting PTE_MAYBE_GP we check system_supports_bti() but this is
> > true for systems where only CONFIG_BTI is set causing us to enable BTI
> > on some kernel text. Add an extra check for the kernel mode option,
> > using an ifdef due to line length.
> 
> Applied to arm64 (for-next/bti), thanks!
> 
> [1/1] arm64: bti: Fix support for userspace only BTI
>       https://git.kernel.org/arm64/c/e70b3b544798

Damn, I just realised the 'Fixes:' tag is missing double-quotes around
the subject. I'll fix that up now to avoid linux-next shouting at me, but
it means the link above won't work any more because the SHA will change.

Will

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

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

end of thread, other threads:[~2020-05-12 17:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-05-12 11:39 [PATCH v2] arm64: bti: Fix support for userspace only BTI Mark Brown
2020-05-12 17:40 ` Will Deacon
2020-05-12 17:46   ` Will Deacon

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).