From 6b09d3c3ae5767b06f1d9394db8fbd6846ea1ec2 Mon Sep 17 00:00:00 2001 From: Stanislaw Gruszka Date: Sun, 27 Jun 2010 23:33:29 +0000 Subject: [PATCH] --- yaml --- r: 203215 b: refs/heads/master c: ef2519b1dd3994074e3e438d67f2d91d07c3a5a8 h: refs/heads/master i: 203213: c1ae4bb3f1389fc27c88ea548df40b343bddab47 203211: 59bcf59e6f8dc92b4b478229060b07b9c2199126 203207: f2bd8fed56601e4f3b92cd21b0bb88cb1e280e5d 203199: b69169f8cc400d886b88046ea771e447cc38841a v: v3 --- [refs] | 2 +- trunk/drivers/net/netxen/netxen_nic_ethtool.c | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index bf115f751569..446505bfec4a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e0d904ffd052930504913fb105dd25764f5f0bd8 +refs/heads/master: ef2519b1dd3994074e3e438d67f2d91d07c3a5a8 diff --git a/trunk/drivers/net/netxen/netxen_nic_ethtool.c b/trunk/drivers/net/netxen/netxen_nic_ethtool.c index 20f7c58bd092..6d94ee579466 100644 --- a/trunk/drivers/net/netxen/netxen_nic_ethtool.c +++ b/trunk/drivers/net/netxen/netxen_nic_ethtool.c @@ -887,12 +887,19 @@ static int netxen_nic_set_flags(struct net_device *netdev, u32 data) struct netxen_adapter *adapter = netdev_priv(netdev); int hw_lro; + if (data & ~ETH_FLAG_LRO) + return -EOPNOTSUPP; + if (!(adapter->capabilities & NX_FW_CAPABILITY_HW_LRO)) return -EINVAL; - ethtool_op_set_flags(netdev, data); - - hw_lro = (data & ETH_FLAG_LRO) ? NETXEN_NIC_LRO_ENABLED : 0; + if (data & ETH_FLAG_LRO) { + hw_lro = NETXEN_NIC_LRO_ENABLED; + netdev->features |= NETIF_F_LRO; + } else { + hw_lro = 0; + netdev->features &= ~NETIF_F_LRO; + } if (netxen_config_hw_lro(adapter, hw_lro)) return -EIO;