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