> Attached is a patch that gets things compiling on the Alpha, but it
> needs more work because it crashes on boot w/ some waitqueue debug
> errors.
It needs (at least) adding checks for lazy threads into do_page_fault()
(and I suspect that it shouldn't accept faults within the interrupt, but
that's another story).
--- linux-2.3.12-pre1/arch/alpha/mm/fault.c Wed Jul 21 21:10:40 1999
+++ linux/arch/alpha/mm/fault.c Sun Jul 25 00:37:15 1999
@@ -80,6 +80,8 @@
struct mm_struct *mm = current->mm;
unsigned fixup;
+ if (!mm /* || in_interrupt() */)
+ goto no_context;
/* As of EV6, a load into $31/$f31 is a prefetch, and never faults
(or is suppressed by the PALcode). Support that for older CPUs
by ignoring such an instruction. */
@@ -137,6 +139,7 @@
goto out;
}
+no_context:
/* Are we prepared to handle this fault as an exception? */
if ((fixup = search_exception_table(regs->pc)) != 0) {
unsigned long newpc;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/