Messages in this thread Patch in this message | | | Date | Wed, 19 Nov 2003 17:12:09 -0800 | From | William Lee Irwin III <> | Subject | Re: 2.6.0-test9-mm4 (only) and vmware |
| |
Jose Luis Domingo Lopez <linux-kernel@24x7linux.com> wrote: >> PS2: trying to "recompile" vmmon and vmnet again and starting VMware, >> when tried to boot some guest OS I got the following in the logs: >> kernel BUG at mm/memory.c:793!
On Wed, Nov 19, 2003 at 05:02:33PM -0800, Andrew Morton wrote: > err, this is due to pagefault-accounting-fix.patch. Looks like vmware has > its own pagefault handler and Bill didn't update vmware ;) > Bill, can we take those BUGs out of there and just do some sane default > thing?
Here it is.
-- wli
diff -prauN mm4-2.6.0-test9-1/arch/i386/mm/fault.c mm4-2.6.0-test9-default-1/arch/i386/mm/fault.c --- mm4-2.6.0-test9-1/arch/i386/mm/fault.c 2003-11-19 00:07:03.000000000 -0800 +++ mm4-2.6.0-test9-default-1/arch/i386/mm/fault.c 2003-11-19 17:07:44.000000000 -0800 @@ -343,9 +343,6 @@ good_area: * the fault. */ switch (handle_mm_fault(mm, vma, address, write)) { - case VM_FAULT_MINOR: - tsk->min_flt++; - break; case VM_FAULT_MAJOR: tsk->maj_flt++; break; @@ -353,8 +350,10 @@ good_area: goto do_sigbus; case VM_FAULT_OOM: goto out_of_memory; + case VM_FAULT_MINOR: default: - BUG(); + tsk->min_flt++; + break; } /* diff -prauN mm4-2.6.0-test9-1/mm/memory.c mm4-2.6.0-test9-default-1/mm/memory.c --- mm4-2.6.0-test9-1/mm/memory.c 2003-11-19 00:07:15.000000000 -0800 +++ mm4-2.6.0-test9-default-1/mm/memory.c 2003-11-19 17:07:56.000000000 -0800 @@ -779,9 +779,6 @@ int get_user_pages(struct task_struct *t while (!(map = follow_page(mm, start, write))) { spin_unlock(&mm->page_table_lock); switch (handle_mm_fault(mm,vma,start,write)) { - case VM_FAULT_MINOR: - tsk->min_flt++; - break; case VM_FAULT_MAJOR: tsk->maj_flt++; break; @@ -789,8 +786,10 @@ int get_user_pages(struct task_struct *t return i ? i : -EFAULT; case VM_FAULT_OOM: return i ? i : -ENOMEM; + case VM_FAULT_MINOR: default: - BUG(); + tsk->min_flt++; + break; } spin_lock(&mm->page_table_lock); } - 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/
| |