arch/riscv/Kconfig | 5 +++++ 1 file changed, 5 insertions(+)
This is used in poison.h for poison pointer offset. Based on current
SV39, SV48 and SV57 vm layout, 0xdead000000000000 is a proper value
that is not mappable, this can avoid potentially turning an oops to
an expolit.
Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
---
Since v1:
- fix typo:s/SV59/SV57
arch/riscv/Kconfig | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index c51b32a8ddff..c992eabbd002 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -313,6 +313,11 @@ config GENERIC_HWEIGHT
config FIX_EARLYCON_MEM
def_bool MMU
+config ILLEGAL_POINTER_VALUE
+ hex
+ default 0 if 32BIT
+ default 0xdead000000000000 if 64BIT
+
config PGTABLE_LEVELS
int
default 5 if 64BIT
--
2.43.0
On Sat, Jul 06, 2024 at 01:02:10AM +0800, Jisheng Zhang wrote: > This is used in poison.h for poison pointer offset. Based on current > SV39, SV48 and SV57 vm layout, 0xdead000000000000 is a proper value > that is not mappable, this can avoid potentially turning an oops to > an expolit. Maybe I also need to cc stable? This is a secure hole fix patch. > > Signed-off-by: Jisheng Zhang <jszhang@kernel.org> > --- > > Since v1: > - fix typo:s/SV59/SV57 > > arch/riscv/Kconfig | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index c51b32a8ddff..c992eabbd002 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -313,6 +313,11 @@ config GENERIC_HWEIGHT > config FIX_EARLYCON_MEM > def_bool MMU > > +config ILLEGAL_POINTER_VALUE > + hex > + default 0 if 32BIT > + default 0xdead000000000000 if 64BIT > + > config PGTABLE_LEVELS > int > default 5 if 64BIT > -- > 2.43.0 > > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv
On Fri, 05 Jul 2024 17:50:10 PDT (-0700), jszhang@kernel.org wrote:
> On Sat, Jul 06, 2024 at 01:02:10AM +0800, Jisheng Zhang wrote:
>> This is used in poison.h for poison pointer offset. Based on current
>> SV39, SV48 and SV57 vm layout, 0xdead000000000000 is a proper value
>> that is not mappable, this can avoid potentially turning an oops to
>> an expolit.
>
> Maybe I also need to cc stable? This is a secure hole fix patch.
Ya, and I guess it's just been broken forever? I stuck a
Fixes: fbe934d69eb7 ("RISC-V: Build Infrastructure")
it should show up on for-next, assuming the tests pass...
>
>>
>> Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
>> ---
>>
>> Since v1:
>> - fix typo:s/SV59/SV57
>>
>> arch/riscv/Kconfig | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
>> index c51b32a8ddff..c992eabbd002 100644
>> --- a/arch/riscv/Kconfig
>> +++ b/arch/riscv/Kconfig
>> @@ -313,6 +313,11 @@ config GENERIC_HWEIGHT
>> config FIX_EARLYCON_MEM
>> def_bool MMU
>>
>> +config ILLEGAL_POINTER_VALUE
>> + hex
>> + default 0 if 32BIT
>> + default 0xdead000000000000 if 64BIT
>> +
>> config PGTABLE_LEVELS
>> int
>> default 5 if 64BIT
>> --
>> 2.43.0
>>
>>
>> _______________________________________________
>> linux-riscv mailing list
>> linux-riscv@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-riscv
© 2016 - 2026 Red Hat, Inc.