patch-2.4.22 linux-2.4.22/arch/sh/mm/fault.c
Next file: linux-2.4.22/arch/sh/mm/init.c
Previous file: linux-2.4.22/arch/sh/mm/copy_page.S
Back to the patch index
Back to the overall index
- Lines: 46
- Date:
2003-08-25 04:44:40.000000000 -0700
- Orig file:
linux-2.4.21/arch/sh/mm/fault.c
- Orig date:
2002-11-28 15:53:11.000000000 -0800
diff -urN linux-2.4.21/arch/sh/mm/fault.c linux-2.4.22/arch/sh/mm/fault.c
@@ -1,4 +1,4 @@
-/* $Id: fault.c,v 1.49 2001/10/06 19:46:00 lethal Exp $
+/* $Id: fault.c,v 1.1.1.1.2.3 2002/10/24 05:52:58 mrbrown Exp $
*
* linux/arch/sh/mm/fault.c
* Copyright (C) 1999 Niibe Yutaka
@@ -27,6 +27,10 @@
#include <asm/hardirq.h>
#include <asm/mmu_context.h>
+#if defined(CONFIG_SH_KGDB)
+#include <asm/kgdb.h>
+#endif
+
extern void die(const char *,struct pt_regs *,long);
/*
@@ -95,6 +99,11 @@
unsigned long page;
unsigned long fixup;
+#if defined(CONFIG_SH_KGDB)
+ if (kgdb_nofault && kgdb_bus_err_hook)
+ kgdb_bus_err_hook();
+#endif
+
tsk = current;
mm = tsk->mm;
@@ -243,10 +252,16 @@
pte_t *pte;
pte_t entry;
+#if defined(CONFIG_SH_KGDB)
+ if (kgdb_nofault && kgdb_bus_err_hook)
+ kgdb_bus_err_hook();
+#endif
if (address >= P3SEG && address < P4SEG)
dir = pgd_offset_k(address);
else if (address >= TASK_SIZE)
return 1;
+ else if (!current->mm)
+ return 1;
else
dir = pgd_offset(current->mm, address);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)