Messages in this thread | | | From | Zong Li <> | Date | Tue, 21 Apr 2020 13:36:14 +0800 | Subject | Re: [PATCH v5 0/9] Support strict kernel memory permissions for security |
| |
Palmer Dabbelt <palmer@dabbelt.com> 於 2020年4月21日 週二 上午2:27寫道: > > On Wed, 08 Apr 2020 00:56:55 PDT (-0700), zong.li@sifive.com wrote: > > The main purpose of this patch series is changing the kernel mapping permission > > , make sure that code is not writeable, data is not executable, and read-only > > data is neither writable nor executable. > > > > This patch series also supports the relevant implementations such as > > ARCH_HAS_SET_MEMORY, ARCH_HAS_SET_DIRECT_MAP, > > ARCH_SUPPORTS_DEBUG_PAGEALLOC and DEBUG_WX. > > > > Changes in v5: > > - Add lockdep_assert_held and more comments for text_mutex. > > > > Changes in v4: > > - Use NOKPROBE_SYMBOL instead of __kprobe annotation > > - Use text_mutex instead of patch_lock > > - Remove 'riscv_' prefix of function name > > > > Changes in v3: > > - Fix build error on nommu configuration. We already support nommu on > > RISC-V, so we should consider nommu case and test not only rv32/64, > > but also nommu. > > > > Changes in v2: > > - Use _data to specify the start of data section with write permission. > > - Change ftrace patch text implementaion. > > - Separate DEBUG_WX patch to another patchset. > > > > Zong Li (9): > > riscv: add macro to get instruction length > > riscv: introduce interfaces to patch kernel code > > riscv: patch code by fixmap mapping > > riscv: add ARCH_HAS_SET_MEMORY support > > riscv: add ARCH_HAS_SET_DIRECT_MAP support > > riscv: add ARCH_SUPPORTS_DEBUG_PAGEALLOC support > > riscv: move exception table immediately after RO_DATA > > riscv: add alignment for text, rodata and data sections > > riscv: add STRICT_KERNEL_RWX support > > > > arch/riscv/Kconfig | 6 + > > arch/riscv/include/asm/bug.h | 8 ++ > > arch/riscv/include/asm/fixmap.h | 2 + > > arch/riscv/include/asm/patch.h | 12 ++ > > arch/riscv/include/asm/set_memory.h | 48 +++++++ > > arch/riscv/kernel/Makefile | 4 +- > > arch/riscv/kernel/ftrace.c | 26 ++-- > > arch/riscv/kernel/patch.c | 128 +++++++++++++++++++ > > arch/riscv/kernel/traps.c | 3 +- > > arch/riscv/kernel/vmlinux.lds.S | 11 +- > > arch/riscv/mm/Makefile | 2 +- > > arch/riscv/mm/init.c | 44 +++++++ > > arch/riscv/mm/pageattr.c | 187 ++++++++++++++++++++++++++++ > > 13 files changed, 466 insertions(+), 15 deletions(-) > > create mode 100644 arch/riscv/include/asm/patch.h > > create mode 100644 arch/riscv/include/asm/set_memory.h > > create mode 100644 arch/riscv/kernel/patch.c > > create mode 100644 arch/riscv/mm/pageattr.c > > Looks like there are quite a few conflicts here. Do you mind re-spinning the > patch set for me? It's a bit early to spin off for-next right now so there > might be some more conflicts, but hopefully not too many. >
Sure, let me rebase it and send the next version. Thanks.
> Thanks! >
| |