diff --git a/[refs] b/[refs] index bd1f7c8075ee..a160e7241c1a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 457e9d2233bdde5bb5577df3e2d4d48f84c67b66 +refs/heads/master: 67c9660831f6b6b76866a0838466c83765ffbbd3 diff --git a/trunk/net/core/ethtool.c b/trunk/net/core/ethtool.c index fcd62757704d..248c25c3e820 100644 --- a/trunk/net/core/ethtool.c +++ b/trunk/net/core/ethtool.c @@ -1181,8 +1181,11 @@ static int ethtool_set_gro(struct net_device *dev, char __user *useraddr) return -EFAULT; if (edata.data) { - if (!dev->ethtool_ops->get_rx_csum || - !dev->ethtool_ops->get_rx_csum(dev)) + u32 rxcsum = dev->ethtool_ops->get_rx_csum ? + dev->ethtool_ops->get_rx_csum(dev) : + ethtool_op_get_rx_csum(dev); + + if (!rxcsum) return -EINVAL; dev->features |= NETIF_F_GRO; } else