If I back out this change to arch/i386/mm/fault.c then modules
successfully load. I have no idea if backing it out causes other
problems though.
diff -Nru a/arch/i386/mm/fault.c b/arch/i386/mm/fault.c
--- a/arch/i386/mm/fault.c Sat Aug 10 18:42:20 2002
+++ b/arch/i386/mm/fault.c Sat Aug 10 18:42:20 2002
@@ -181,10 +181,10 @@
info.si_code = SEGV_MAPERR;
/*
- * If we're in an interrupt or have no user
- * context, we must not take the fault..
+ * If we're in an interrupt, have no user context or are running in an
+ * atomic region then we must not take the fault..
*/
- if (in_interrupt() || !mm)
+ if (preempt_count() || !mm)
goto no_context;
down_read(&mm->mmap_sem);
-- Skip - 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/