Index: head/emulators/open-vm-tools/Makefile =================================================================== --- head/emulators/open-vm-tools/Makefile (revision 369841) +++ head/emulators/open-vm-tools/Makefile (revision 369842) @@ -1,87 +1,87 @@ # Created by: mbr@FreeBSD.org # $FreeBSD$ PORTNAME= open-vm-tools PORTVERSION= ${BUILD_VER} -PORTREVISION= 7 +PORTREVISION= 8 PORTEPOCH= 1 CATEGORIES= emulators MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/stable-9.4.x DISTNAME= open-vm-tools-${RELEASE_VER}-${BUILD_VER} MAINTAINER= swills@FreeBSD.org COMMENT?= Open VMware tools for FreeBSD VMware guests LICENSE= LGPL21 LICENSE_FILE= ${WRKSRC}/COPYING RELEASE_VER= 9.4.0 BUILD_VER= 1280544 OPTIONS_DEFINE= X11 LIBNOTIFY UNITY FUSE DNET ICU OPTIONS_DEFAULT= X11 LIBNOTIFY FUSE DNET ICU OPTIONS_SUB= DNET_DESC= libdnet support LIBNOTIFY_DESC= Desktop notification support UNITY_DESC= liburiparser support X11_CONFIGURE_WITH= x gtk2 gtkmm X11_LDFLAGS= -L${LOCALBASE}/lib X11_USE= xorg=x11,ice,sm,xext,xineramaproto,xinerama,xrandr,xrender,xtst \ gnome=gtk20,gtkmm24 X11_USES= fuse LIBNOTIFY_LIB_DEPENDS= libnotify.so:${PORTSDIR}/devel/libnotify UNITY_CONFIGURE_ENV= CUSTOM_URIPARSER_CPPFLAGS="-I${LOCALBASE}/include/uriparser" UNITY_LIB_DEPENDS= liburiparser.so:${PORTSDIR}/net/uriparser UNITY_CONFIGURE_ENABLE= unity DNET_CONFIGURE_WITH= dnet DNET_LIB_DEPENDS= libdnet.so:${PORTSDIR}/net/libdnet ICU_CONFIGURE_WITH= icu ICU_LIB_DEPENDS= libicuuc.so:${PORTSDIR}/devel/icu WRKSRC= ${WRKDIR}/open-vm-tools-${RELEASE_VER}-${BUILD_VER} GNU_CONFIGURE= yes USES= pkgconfig kmod libtool USE_GNOME= glib20 USE_LDCONFIG= yes CPPFLAGS+= -Wno-deprecated-declarations SSP_UNSAFE= kernel module does not support ssp CONFIGURE_ARGS+= --without-procps --sysconfdir=${LOCALBASE}/etc CONFLICTS+= vmware-guestd[0-9]* vmware-tools[0-9]* SUB_FILES= pkg-message USE_RC_SUBR= vmware-guestd vmware-kmod .include .if ${PORT_OPTIONS:MX11} CONFLICTS= open-vm-tools-nox11-[0-9]* .else CONFLICTS= open-vm-tools-[0-9]* .endif .include .if ${ARCH} == "sparc64" IGNORE= not yet ported to sparc64 .endif post-build: cd ${WRKSRC}/modules && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers ${MKDIR} ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/input ${INSTALL_DATA} ${WRKSRC}/modules/freebsd/vmmemctl.ko ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers/vmmemctl.ko ${INSTALL_DATA} ${WRKSRC}/modules/freebsd/vmxnet.ko ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers/vmxnet.ko ${INSTALL_DATA} ${WRKSRC}/modules/freebsd/vmhgfs.ko ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers/vmhgfs.ko ${INSTALL_DATA} ${WRKSRC}/modules/freebsd/vmblock.ko ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers/vmblock.ko ${MKDIR} ${STAGEDIR}${PREFIX}/share/open-vm-tools/scripts/vmware/ ${MKDIR} ${STAGEDIR}${PREFIX}/share/open-vm-tools/scripts/ ${MKDIR} ${STAGEDIR}${PREFIX}/share/open-vm-tools/tests/ .include Index: head/emulators/open-vm-tools/files/patch-modules__freebsd__vmxnet__if_vxn.c =================================================================== --- head/emulators/open-vm-tools/files/patch-modules__freebsd__vmxnet__if_vxn.c (revision 369841) +++ head/emulators/open-vm-tools/files/patch-modules__freebsd__vmxnet__if_vxn.c (revision 369842) @@ -1,55 +1,80 @@ ---- ./modules/freebsd/vmxnet/if_vxn.c.orig 2013-09-23 15:51:10.000000000 +0000 -+++ ./modules/freebsd/vmxnet/if_vxn.c 2014-04-23 15:36:44.347844739 +0000 +--- modules/freebsd/vmxnet/if_vxn.c.orig 2013-09-23 19:51:10.000000000 +0400 ++++ modules/freebsd/vmxnet/if_vxn.c 2014-10-02 22:13:31.000000000 +0400 @@ -76,6 +76,10 @@ #include #endif +#if __FreeBSD_version >= 1100001 +#include +#endif + /* define INLINE the way gcc likes it */ #define INLINE __inline__ @@ -936,14 +940,14 @@ if (m != NULL) { struct mbuf *m_new = NULL; - MGETHDR(m_new, M_DONTWAIT, MT_DATA); + MGETHDR(m_new, M_NOWAIT, MT_DATA); if (m_new == NULL) { printf("vxn%d: no memory for tx list\n", VXN_IF_UNIT(ifp)); return 1; } if (m_head->m_pkthdr.len > MHLEN) { - MCLGET(m_new, M_DONTWAIT); + MCLGET(m_new, M_NOWAIT); if (!(m_new->m_flags & M_EXT)) { m_freem(m_new); printf("vxn%d: no memory for tx list\n", VXN_IF_UNIT(ifp)); -@@ -1266,9 +1270,9 @@ +@@ -1067,7 +1071,11 @@ + VMXNET_INC(dd->txDriverNext, dd->txRingLength); + dd->txNumDeferred++; + sc->vxn_tx_pending++; ++#if __FreeBSD_version >= 1100036 ++ if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1); ++#else + ifp->if_opackets++; ++#endif + } + + /* +@@ -1266,9 +1274,9 @@ /* * Allocate a new mbuf cluster to replace the current one */ - MGETHDR(m_new, M_DONTWAIT, MT_DATA); + MGETHDR(m_new, M_NOWAIT, MT_DATA); if (m_new != NULL) { - MCLGET(m_new, M_DONTWAIT); + MCLGET(m_new, M_NOWAIT); if (m_new->m_flags & M_EXT) { m_adj(m_new, ETHER_ALIGN); } else { -@@ -1401,10 +1405,10 @@ +@@ -1286,8 +1294,11 @@ + + sc->vxn_rx_buffptr[dd->rxDriverNext] = m_new; + rre->paddr = (uint32)vtophys(mtod(m_new, caddr_t)); +- ++#if __FreeBSD_version >= 1100036 ++ if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); ++#else + ifp->if_ipackets++; ++#endif + m->m_pkthdr.rcvif = ifp; + m->m_pkthdr.len = m->m_len = pkt_len; + +@@ -1401,10 +1412,10 @@ * Allocate an mbuf and initialize it to contain a packet header and * internal data. */ - MGETHDR(m_new, M_DONTWAIT, MT_DATA); + MGETHDR(m_new, M_NOWAIT, MT_DATA); if (m_new != NULL) { /* Allocate and attach an mbuf cluster to mbuf. */ - MCLGET(m_new, M_DONTWAIT); + MCLGET(m_new, M_NOWAIT); if (m_new->m_flags & M_EXT) { m_adj(m_new, ETHER_ALIGN); sc->vxn_rx_ring[i].paddr = (uint32)vtophys(mtod(m_new, caddr_t));