Message ID | 20210508234347.0b40b94a@xhacker (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | riscv: kprobes: Fix build error when MMU=n | expand |
On Sat, 08 May 2021 08:43:47 PDT (-0700), jszhang3@mail.ustc.edu.cn wrote: > From: Jisheng Zhang <jszhang@kernel.org> > > lkp reported a randconfig failure: > > arch/riscv/kernel/probes/kprobes.c:90:22: error: use of undeclared identifier 'PAGE_KERNEL_READ_EXEC' > > We implemented the alloc_insn_page() to allocate PAGE_KERNEL_READ_EXEC > page for kprobes insn page for STRICT_MODULE_RWX. But if MMU=n, we > should fall back to the generic weak alloc_insn_page() by generic > kprobe subsystem. > > Fixes: cdd1b2bd358f ("riscv: kprobes: Implement alloc_insn_page()") > Signed-off-by: Jisheng Zhang <jszhang@kernel.org> > Reported-by: kernel test robot <lkp@intel.com> > --- > arch/riscv/kernel/probes/kprobes.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/riscv/kernel/probes/kprobes.c b/arch/riscv/kernel/probes/kprobes.c > index 10b965c34536..15cc65ac7ca6 100644 > --- a/arch/riscv/kernel/probes/kprobes.c > +++ b/arch/riscv/kernel/probes/kprobes.c > @@ -84,6 +84,7 @@ int __kprobes arch_prepare_kprobe(struct kprobe *p) > return 0; > } > > +#ifdef CONFIG_MMU > void *alloc_insn_page(void) > { > return __vmalloc_node_range(PAGE_SIZE, 1, VMALLOC_START, VMALLOC_END, > @@ -91,6 +92,7 @@ void *alloc_insn_page(void) > VM_FLUSH_RESET_PERMS, NUMA_NO_NODE, > __builtin_return_address(0)); > } > +#endif > > /* install breakpoint in text */ > void __kprobes arch_arm_kprobe(struct kprobe *p) Thanks, this is on fixes.
diff --git a/arch/riscv/kernel/probes/kprobes.c b/arch/riscv/kernel/probes/kprobes.c index 10b965c34536..15cc65ac7ca6 100644 --- a/arch/riscv/kernel/probes/kprobes.c +++ b/arch/riscv/kernel/probes/kprobes.c @@ -84,6 +84,7 @@ int __kprobes arch_prepare_kprobe(struct kprobe *p) return 0; } +#ifdef CONFIG_MMU void *alloc_insn_page(void) { return __vmalloc_node_range(PAGE_SIZE, 1, VMALLOC_START, VMALLOC_END, @@ -91,6 +92,7 @@ void *alloc_insn_page(void) VM_FLUSH_RESET_PERMS, NUMA_NO_NODE, __builtin_return_address(0)); } +#endif /* install breakpoint in text */ void __kprobes arch_arm_kprobe(struct kprobe *p)