[vbox-dev] New breakage from Linus
Larry Finger
Larry.Finger at lwfinger.net
Fri Jun 19 16:59:16 PDT 2009
With 2.6.30, there was a message something to the effect "vboxnetflt
not using net_device_ops". With 2.6.31, the old method disappears and
one must use the new one.
The required patch is as follows:
Index: src/vboxnetflt/linux/VBoxNetFlt-linux.c
===================================================================
--- src.orig/vboxnetflt/linux/VBoxNetFlt-linux.c
+++ src/vboxnetflt/linux/VBoxNetFlt-linux.c
@@ -214,6 +214,13 @@ static int vboxNetAdpValidateAddr(struct
return -EADDRNOTAVAIL;
} */
+static const struct net_device_ops vbox_netdev_ops = {
+ .ndo_open = vboxNetAdpOpen,
+ .ndo_stop = vboxNetAdpStop,
+ .ndo_start_xmit = vboxNetAdpXmit,
+ .ndo_get_stats = vboxNetAdpGetStats,
+};
+
static void vboxNetAdpNetDevInit(struct net_device *pNetDev)
{
PVBOXNETADPPRIV pPriv;
@@ -222,10 +229,8 @@ static void vboxNetAdpNetDevInit(struct
/// @todo Use Sun vendor id
memcpy(pNetDev->dev_addr, "\0vbnet", ETH_ALEN);
Log(("vboxNetAdpNetDevInit: pNetDev->dev_addr = %.6Rhxd\n",
pNetDev->dev_addr));
- pNetDev->open = vboxNetAdpOpen;
- pNetDev->stop = vboxNetAdpStop;
- pNetDev->hard_start_xmit = vboxNetAdpXmit;
- pNetDev->get_stats = vboxNetAdpGetStats;
+ pNetDev->netdev_ops = &vbox_netdev_ops;
+
//pNetDev->validate_addr = vboxNetAdpValidateAddr;
/* pNetDev-> = vboxNetAdp;
pNetDev-> = vboxNetAdp;
More information about the vbox-dev
mailing list