> And for me it's not limited to gcc. 'top', 'iptraf', even 'ls' also segfaulted
> without any sane reason. :)
Here's the fix that works for a couple of other people who have triggered
the problem. I was being too clever, and it seems that in some cases even
though the new parameter is not touched, its presence is corrupting
*something*. If someone has an explanation, I'd be interested in hearing
it.
-ben
diff -ur clean/2.3.32/mm/mremap.c 2.3.32/mm/mremap.c
--- clean/2.3.32/mm/mremap.c Wed Dec 8 22:14:20 1999
+++ 2.3.32/mm/mremap.c Tue Dec 14 10:31:46 1999
@@ -166,7 +166,7 @@
* MREMAP_FIXED option added 5-Dec-1999 by Benjamin LaHaise
* This option implies MREMAP_MAYMOVE.
*/
-asmlinkage unsigned long sys_mremap(unsigned long addr,
+unsigned long do_sys_mremap(unsigned long addr,
unsigned long old_len, unsigned long new_len,
unsigned long flags, unsigned long new_addr)
{
@@ -286,3 +286,20 @@
up(¤t->mm->mmap_sem);
return ret;
}
+
+asmlinkage unsigned long sys_mremap(unsigned long addr,
+ unsigned long old_len, unsigned long new_len,
+ unsigned long flags)
+{
+ if (flags & ~MREMAP_MAYMOVE)
+ printk("sys_mremap: passed invalid flags: %08lx\n", flags);
+ return do_sys_mremap(addr, old_len, new_len, flags, 0);
+}
+
+asmlinkage unsigned long do_sys_mremap2(unsigned long addr,
+ unsigned long old_len, unsigned long new_len,
+ unsigned long flags, unsigned long new_addr)
+{
+ return do_sys_mremap(addr, old_len, new_len, flags, new_addr);
+}
+
-
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/