Hi, Greg, The 3 patches help fix the problem, that the infinite recursion reports "bus error". Could you please add them to 3.10 stable? thanks, :-) Sheng On 2/27/2015 7:14 PM, Sheng Yong wrote: > Hi, Greg, > > V2: > Backport commit 7fb08eca ("x86: mm: move mmap_sem unlock from > mm_fault_error() to caller)" to solve lock problem on x86. > > V1: > The commit 88b5d12 ("mm: propagate error from stack expansion even for > guard page") for 3.10-stable makes the testcase get "bus error", while > it had "segmentation fault" in older kernels. > > ===== testcase ===== > int main(void) > { > main(); > return 0; > } > ==================== > > These 2 patches fix it by adding a VM_FAULT_SIGSEGV in all architecture > fault handlers. > > [PATCH 1/3] is asjusted to ignore un-supported arch and driver in 3.10. > And some files are separated or renamed in newer kernel, so [PATCH 1/3] > is also adjusted to add the VM_FAULT_SIGSEGV handling in the original > files in 3.10. > > thanks, > Sheng > > Linus Torvalds (3): > vm: add VM_FAULT_SIGSEGV handling support > vm: make stack guard page errors return VM_FAULT_SIGSEGV rather than > SIGBUS > x86: mm: move mmap_sem unlock from mm_fault_error() to caller > > arch/alpha/mm/fault.c | 2 ++ > arch/arc/mm/fault.c | 2 ++ > arch/avr32/mm/fault.c | 2 ++ > arch/cris/mm/fault.c | 2 ++ > arch/frv/mm/fault.c | 2 ++ > arch/ia64/mm/fault.c | 2 ++ > arch/m32r/mm/fault.c | 2 ++ > arch/m68k/mm/fault.c | 2 ++ > arch/metag/mm/fault.c | 2 ++ > arch/microblaze/mm/fault.c | 2 ++ > arch/mips/mm/fault.c | 2 ++ > arch/mn10300/mm/fault.c | 2 ++ > arch/openrisc/mm/fault.c | 2 ++ > arch/parisc/mm/fault.c | 2 ++ > arch/powerpc/mm/fault.c | 2 ++ > arch/powerpc/platforms/cell/spu_fault.c | 2 +- > arch/s390/mm/fault.c | 6 ++++++ > arch/score/mm/fault.c | 2 ++ > arch/sh/mm/fault.c | 2 ++ > arch/sparc/mm/fault_32.c | 2 ++ > arch/sparc/mm/fault_64.c | 2 ++ > arch/tile/mm/fault.c | 2 ++ > arch/um/kernel/trap.c | 2 ++ > arch/x86/mm/fault.c | 10 +++------- > arch/xtensa/mm/fault.c | 2 ++ > include/linux/mm.h | 5 +++-- > mm/ksm.c | 2 +- > mm/memory.c | 7 ++++--- > 28 files changed, 62 insertions(+), 14 deletions(-) > -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html