diff options
-rw-r--r-- | drivers/net/bnx2x_main.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/net/bnx2x_main.c b/drivers/net/bnx2x_main.c index 16685a153c10..ccdc3fe13414 100644 --- a/drivers/net/bnx2x_main.c +++ b/drivers/net/bnx2x_main.c | |||
@@ -9968,12 +9968,14 @@ static int bnx2x_set_flags(struct net_device *dev, u32 data) | |||
9968 | 9968 | ||
9969 | /* TPA requires Rx CSUM offloading */ | 9969 | /* TPA requires Rx CSUM offloading */ |
9970 | if ((data & ETH_FLAG_LRO) && bp->rx_csum) { | 9970 | if ((data & ETH_FLAG_LRO) && bp->rx_csum) { |
9971 | if (!(dev->features & NETIF_F_LRO)) { | 9971 | if (!disable_tpa) { |
9972 | dev->features |= NETIF_F_LRO; | 9972 | if (!(dev->features & NETIF_F_LRO)) { |
9973 | bp->flags |= TPA_ENABLE_FLAG; | 9973 | dev->features |= NETIF_F_LRO; |
9974 | changed = 1; | 9974 | bp->flags |= TPA_ENABLE_FLAG; |
9975 | } | 9975 | changed = 1; |
9976 | 9976 | } | |
9977 | } else | ||
9978 | rc = -EINVAL; | ||
9977 | } else if (dev->features & NETIF_F_LRO) { | 9979 | } else if (dev->features & NETIF_F_LRO) { |
9978 | dev->features &= ~NETIF_F_LRO; | 9980 | dev->features &= ~NETIF_F_LRO; |
9979 | bp->flags &= ~TPA_ENABLE_FLAG; | 9981 | bp->flags &= ~TPA_ENABLE_FLAG; |