Failure to build (ports) vmware2 in 4-9-PRERELEASE

Andrew Sparrow spadger at spadger.best.vwh.net
Mon Sep 29 14:06:32 PDT 2003


On Tue, Sep 30, 2003 at 03:20:03AM +0700, Max Khon wrote:
> Hello!
> 
> On Tue, Sep 30, 2003 at 02:58:05AM +0700, Max Khon wrote:
> 
> > > > I got the following errors in re-building emulators/vmware2. (need to 
> > > > change the netgraph bridging interface)
> > > > Anyone experiencing the similar symptoms?
> > > 
> > > The PAE import broke vmware2; no ETA on a fix that I've heard.  I
> > > suggest sticking with RELENG_4_8.
> > 
> > Attached patch works for me.
> > (run "patch <Makefile.diff" in ports/emulators/vmware2).
> > I would like to commit it after maintainer approval.
> 
> Oops, parenthesis confuse arithmetic expression parser in
> 4.8-RELEASE and earlier. Corrected patch (without parenthesis) is attached.
> 

The patches that Anders Nordby (thanks Anders!!) supplied in the
commentary for PR55928 still work fine for me, on a -PRERELEASE of
Sep 18th):


diff -Nur vmware2.old/Makefile vmware2/Makefile
      --- vmware2.old/Makefile       Sun Apr 13 11:55:43 2003
      +++ vmware2/Makefile   Mon Sep  8 09:22:11 2003
      @@ -99,6 +99,8 @@
       .endif
       .if ${OSVERSION} >= 500027
             ${CAT} ${FILESDIR}/pmap.patch | (cd ${WRKSRC} && patch) > /dev/null 2>&1
      +.elseif ${OSVERSION} < 500000 && ${OSVERSION} >= 480101
      +      ${CAT} ${FILESDIR}/pmap.patch-stable | (cd ${WRKSRC} && patch) > /dev/null 2>&1
       .endif
             ${CP} ${FILESDIR}/Makefile ${WRKSRC}
             ${CP} ${FILESDIR}/Makefile.vmmon ${WRKSRC}/vmmon-only/Makefile
      diff -Nur vmware2.old/files/pmap.patch-stable vmware2/files/pmap.patch-stable
      --- vmware2.old/files/pmap.patch-stable        Thu Jan  1 01:00:00 1970
      +++ vmware2/files/pmap.patch-stable    Mon Sep  8 09:17:55 2003
      @@ -0,0 +1,16 @@
      +--- vmmon-only/freebsd/hostif.c.orig  Mon Sep  8 09:10:39 2003
      ++++ vmmon-only/freebsd/hostif.c       Mon Sep  8 09:11:28 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);


More information about the freebsd-stable mailing list