[vbox-dev] [PATCH] VBoxNetAdp update for kernel-2.6.30+

walt w41ter at gmail.com
Sun Jun 21 19:32:34 GMT 2009


This fixes OSE breakage from recent changes to kernel data structures:

Index: src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
===================================================================
--- src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c	(revision 20732)
+++ src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c	(working copy)
@@ -161,16 +161,29 @@
     return &pPriv->Stats;
 }

+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 30)
+/* Thanks to Larry Finger */
+static const struct net_device_ops vbox_netdev_ops =
+{
+	.ndo_open = vboxNetAdpLinuxOpen,
+	.ndo_stop = vboxNetAdpLinuxStop,
+	.ndo_start_xmit = vboxNetAdpLinuxXmit,
+	.ndo_get_stats = vboxNetAdpLinuxGetStats,
+};
+#endif
+
 static void vboxNetAdpNetDevInit(struct net_device *pNetDev)
 {
     PVBOXNETADPPRIV pPriv;
-
     ether_setup(pNetDev);
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 30)
+	pNetDev->netdev_ops = &vbox_netdev_ops;
+#else
     pNetDev->open = vboxNetAdpLinuxOpen;
     pNetDev->stop = vboxNetAdpLinuxStop;
     pNetDev->hard_start_xmit = vboxNetAdpLinuxXmit;
     pNetDev->get_stats = vboxNetAdpLinuxGetStats;
-
+#endif
     pPriv = netdev_priv(pNetDev);
     memset(pPriv, 0, sizeof(*pPriv));
 }





More information about the vbox-dev mailing list