Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ef2519b1 authored by Stanislaw Gruszka's avatar Stanislaw Gruszka Committed by David S. Miller
Browse files

netxen: fail when try to setup unsupported features

parent e0d904ff
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -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;