Re: 2.4 SRMMU bug revisited

From: Tomas Szepe (szepe@pinerecords.com)
Date: Wed May 29 2002 - 16:42:12 EST


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

A big, big thankyou to Colin.

This patch indeed makes difference. I stressed -pre9 as much as I could
(simultaneous reading from raid devices - ext3/reiserfs/ext2, NFS traffic,
sendmail+apache fork storms... you name it, I ran it, all at the same time)
and the kernel lives. Processes still get killed by VM much earlier than
they should (100+ MB RAM free), but that's not critical.

A nice conclusion to this thread, isn't it? :)

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



This archive was generated by hypermail 2b29 : Fri May 31 2002 - 22:00:26 EST