On Tue, Mar 10, 2020 at 02:45:50PM +0800, kbuild test robot wrote: > tree: https://github.com/hnaz/linux-mm master > head: 5d9ee416b5701096536c7a63c04dbe25012baa9e > commit: 133f884fbe299145671d583f255f71b63d9ad63f [89/340] mm: introduce fault_signal_pending() > config: xtensa-randconfig-a001-20200309 (attached as .config) > compiler: xtensa-linux-gcc (GCC) 9.2.0 > reproduce: > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > git checkout 133f884fbe299145671d583f255f71b63d9ad63f > # save the attached .config to linux build tree > GCC_VERSION=9.2.0 make.cross ARCH=xtensa > > If you fix the issue, kindly add following tag > Reported-by: kbuild test robot <lkp@xxxxxxxxx> > > All warnings (new ones prefixed by >>): > > In file included from arch/xtensa/include/asm/processor.h:15, > from arch/xtensa/kernel/asm-offsets.c:15: > include/linux/sched/signal.h: In function 'fault_signal_pending': > include/linux/sched/signal.h:381:33: error: 'VM_FAULT_RETRY' undeclared (first use in this function) > 381 | return unlikely((fault_flags & VM_FAULT_RETRY) && > | ^~~~~~~~~~~~~~ Hi, Andrew, Thanks for queuing the two series, and sorry for breaking the builds. I received 6 build errors this morning after you queued the two series on mm page fault retries and userfault-wp. They are: [hnaz-linux-mm:master 89/340] include/linux/sched/signal.h:381:9: note: in expansion of macro 'unlikely' [hnaz-linux-mm:master 89/340] include/linux/sched/signal.h:381:33: error: 'VM_FAULT_RETRY' undeclared [hnaz-linux-mm:master 95/340] include/linux/sched/signal.h:383:6: error: implicit declaration of function 'user_mode' [hnaz-linux-mm:master 89/340] include/linux/sched/signal.h:381:33: error: 'VM_FAULT_RETRY' undeclared [hnaz-linux-mm:master 89/340] arch/mips/mm/fault.c:157:27: error: passing argument 1 of 'fault_signal_pending' makes integer from pointer without a cast [hnaz-linux-mm:master 95/340] include/linux/sched/signal.h:383:6: error: implicit declaration of function 'user_mode' If I'm correct, it's all caused by the patch 3 with subject "mm: Introduce fault_signal_pending()" in the mm page fault retry series. And IIUC below should be able to fix if squashed into the same patch: ------------8<---------------- diff --git a/arch/mips/mm/fault.c b/arch/mips/mm/fault.c index fd64b135fd7b..4a0eafe3d932 100644 --- a/arch/mips/mm/fault.c +++ b/arch/mips/mm/fault.c @@ -154,7 +154,7 @@ static void __kprobes __do_page_fault(struct pt_regs *regs, unsigned long write, */ fault = handle_mm_fault(vma, address, flags); - if (fault_signal_pending(regs)) + if (fault_signal_pending(fault, regs)) return; perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address); diff --git a/include/linux/sched/signal.h b/include/linux/sched/signal.h index 09d40ce6a162..c8e0e4f801e4 100644 --- a/include/linux/sched/signal.h +++ b/include/linux/sched/signal.h @@ -10,6 +10,8 @@ #include <linux/cred.h> #include <linux/refcount.h> #include <linux/posix-timers.h> +#include <linux/mm_types.h> +#include <asm/ptrace.h> /* * Types defining task->signal and task->sighand and APIs using them: ------------>8---------------- I'm sorry I still don't have proper hosts to test build these, so this code clip is only test-compile on x86. May need your help to see how to move on and improve this. Thanks! -- Peter Xu