From: https://github.com/wget/realtek-r8152-linux/commit/6ffb3760c34a904467d70830ac9c10211e8f5d3a From: Hyacinthe Cartiaux Date: Wed, 14 Sep 2022 15:13:31 +0200 Subject: [PATCH] Fix for linux 5.19 without breaking older kernel compatibility --- a/r8152.c +++ b/r8152.c @@ -20458,9 +20458,13 @@ static ssize_t sg_en_store(struct device *dev, struct device_attribute *attr, return -EINVAL; } -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,19,0) +/* LINUX_VERSION_CODE >= KERNEL_VERSION(5,19,0) */ + netif_set_tso_max_size(netdev, tso_size); +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) +/* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) */ netif_set_gso_max_size(netdev, tso_size); -#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) */ +#endif return count; } @@ -20620,12 +20624,16 @@ static int rtl8152_probe(struct usb_interface *intf, rtl_get_mapt_ver(tp); netdev->ethtool_ops = &ops; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,19,0) +/* LINUX_VERSION_CODE >= KERNEL_VERSION(5,19,0) */ + netif_set_tso_max_size(netdev, RTL_LIMITED_TSO_SIZE); +#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) +/* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) */ if (!tp->sg_use) netif_set_gso_max_size(netdev, RTL_LIMITED_TSO_SIZE); #else netdev->features &= ~(NETIF_F_TSO | NETIF_F_TSO6); -#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) */ +#endif #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0) /* MTU range: 68 - 1500 or 9194 */