This patch will fix the following problems: r8168-8.038.00/src/r8168_n.c:17545:5: error: implicit declaration of function ‘SET_ETHTOOL_OPS’ [-Werror=implicit-function-declaration] SET_ETHTOOL_OPS(dev, &rtl8168_ethtool_ops); ^ r8168-8.038.00/src/r8168_n.c:19122:5: error: implicit declaration of function ‘PREPARE_DELAYED_WORK’ [-Werror=implicit-function-declaration] PREPARE_DELAYED_WORK(&tp->task, task); ^ From https://bugs.launchpad.net/ubuntu/+source/r8168-dkms/+bug/1345548 comment 4 & 5 --- r8168-8.038.00/src/r8168_n.c.orig +++ r8168-8.038.00/src/r8168_n.c @@ -17542,7 +17542,11 @@ rtl8168_init_one(struct pci_dev *pdev, RTL_NET_DEVICE_OPS(rtl8168_netdev_ops); +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,16,0) SET_ETHTOOL_OPS(dev, &rtl8168_ethtool_ops); +#else + dev->ethtool_ops = &rtl8168_ethtool_ops; +#endif dev->watchdog_timeo = RTL8168_TX_TIMEOUT; dev->irq = pdev->irq; @@ -19119,7 +19123,11 @@ static void rtl8168_schedule_work(struct { struct rtl8168_private *tp = netdev_priv(dev); +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) PREPARE_DELAYED_WORK(&tp->task, task); +#else + INIT_DELAYED_WORK(&tp->task, task); +#endif schedule_delayed_work(&tp->task, 4); } #endif