Re: 2.4 SRMMU bug revisited

Colin Gibbs (colin@gibbs.dhs.org)
27 May 2002 13:46:38 -0500


On Mon, 2002-05-27 at 04:24, Tomas Szepe wrote:

> I finally got round to trying the patches out and --
>
> unfortunately, things got even worse. While before the machine would
> oops (still allowing one to ssh in and reboot) under heavy loads, now
> it doesn't bother to log the slightest notice that something might
> have broken, and freezes entirely (it can be pinged, though).
>
> I can't say I like these fixes much.
>
>
> T.

What kinds of heavy loads? If you were triggering the out of nocache
memory BUG, then this patch may help. I fixes a bug where fork fails and
calls destroy_context on the parent's mm or more precisely a memcpy'd
duplicate of it. In that case when fork returns to the parent, it
continuously faults.

But if your load does not fork heavily, then this is probably not the
problem.

Colin

--- 2.4.19-pre4/kernel/fork.c Thu Mar 28 19:49:36 2002
+++ tortoise-19-pre4/kernel/fork.c Sun Apr 21 22:01:18 2002
@@ -336,6 +336,9 @@
if (!mm_init(mm))
goto fail_nomem;

+ if (init_new_context(tsk,mm))
+ goto free_pt;
+
down_write(&oldmm->mmap_sem);
retval = dup_mmap(mm);
up_write(&oldmm->mmap_sem);
@@ -347,9 +350,6 @@
* child gets a private LDT (if there was an LDT in the parent)
*/
copy_segments(tsk, mm);
-
- if (init_new_context(tsk,mm))
- goto free_pt;

good_mm:
tsk->mm = mm;

-
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/