Messages in this thread Patch in this message | | | Subject | [PATCH 7/7] UML - Improve SIGBUS diagnostics | Date | Thu, 27 Jul 2006 23:06:30 -0400 | From | Jeff Dike <> |
| |
UML can get a SIGBUS anywhere if the tmpfs mount being used for its memory runs out of space. This patch adds a printk before the panic to provide a clue as to what likely went wrong.
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Index: linux-2.6.17/arch/um/kernel/trap.c =================================================================== --- linux-2.6.17.orig/arch/um/kernel/trap.c 2006-07-12 10:47:56.000000000 -0400 +++ linux-2.6.17/arch/um/kernel/trap.c 2006-07-13 16:27:40.000000000 -0400 @@ -227,9 +227,16 @@ void bad_segv(struct faultinfo fi, unsig void relay_signal(int sig, union uml_pt_regs *regs) { - if(arch_handle_signal(sig, regs)) return; - if(!UPT_IS_USER(regs)) + if(arch_handle_signal(sig, regs)) + return; + + if(!UPT_IS_USER(regs)){ + if(sig == SIGBUS) + printk("Bus error - the /dev/shm or /tmp mount likely " + "just ran out of space\n"); panic("Kernel mode signal %d", sig); + } + current->thread.arch.faultinfo = *UPT_FAULTINFO(regs); force_sig(sig, current); } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |