Date: Sun, 24 Aug 2003 07:14:29 -0400 (EDT) From: "Brandon S. Allbery KF8NH" <allbery@ece.cmu.edu> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/55928: vmware2 broken on -STABLE, presumably by PAE import Message-ID: <200308241114.h7OBETsI004360@pyanfar.ece.cmu.edu> Resent-Message-ID: <200308241740.h7OHe1VO019420@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 55928 >Category: ports >Synopsis: vmware2 broken on -STABLE, presumably by PAE import >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Aug 24 10:40:00 PDT 2003 >Closed-Date: >Last-Modified: >Originator: Brandon S. Allbery KF8NH >Release: FreeBSD 4.8-STABLE i386 >Organization: Carnegie Mellon University Dept. of Electrical & Computer Engineering Computing Facilities >Environment: System: FreeBSD pyanfar.ece.cmu.edu 4.8-STABLE FreeBSD 4.8-STABLE #4: Sun Aug 17 17:28:05 EDT 2003 allbery@pyanfar.ece.cmu.edu:/usr/src/sys/compile/TIRUN i386 >Description: The emulators/vmware2 port does not work on recent -STABLE, failing with "VMware Workstation PANIC: BUG F(571):1607 bugNr=2302". The usual fix for this is to rebuild the kernel modules, but (a) they do not build without patching and (b) the new kernel modules fail with the same error. No kernel messages were logged. Update: retrying it with syslogd recording debug messages, the vmware bugcheck no longer occurs, but vmware reports an inability to reserve memory and the following is syslogged: Aug 24 07:10:10 pyanfar /kernel: /dev/vmmon: HostIF_LockPage vpn=0x0287bc mpn=000000 already tracked Aug 24 07:10:22 pyanfar last message repeated 11 times Aug 24 07:10:30 pyanfar /kernel: /dev/vmmon: Vmx86_DestroyVM: unlocked pages: 0, unlocked dirty pages: 0 Aug 24 07:10:30 pyanfar /kernel: /dev/vmmon: PhysTrack_Cleanup: pfns still locked >How-To-Repeat: Attempt to boot a VMware virtual machine. >Fix: I used the following patch to get the modules to build; not being a kernel hacker, I don't know if it's correct (and would guess it's not, but have no idea what the correct fix is). --- vmmon-only/freebsd/hostif.c~ Fri Aug 22 02:14:28 2003 +++ vmmon-only/freebsd/hostif.c Fri Aug 22 02:13:19 2003 @@ -181,11 +181,11 @@ { #define DEB(x) caddr_t addr = (caddr_t)VPN_2_VA(ppn); - pt_entry_t pteptr = (pt_entry_t)vtopte(addr); + pt_entry_t pteptr = (pt_entry_t)vtopte((unsigned long) addr); PTE pte; DEB(printf("FindMPN: for page %d address %p(phys %p) pteptr %p", ppn, addr, (caddr_t)vtophys(addr), pteptr)); - pte=*pteptr; + pte=*((caddr_t)pteptr); DEB(printf("(0x%08x)\n", pte)); if (pte & PTE_P) { return PTE_2_PFN(pte); >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200308241114.h7OBETsI004360>