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

Commit ec37a48d authored by Jesse Gross's avatar Jesse Gross Committed by David S. Miller
Browse files

bnx2/bnx2x: Unsupported Ethtool operations should return -EINVAL.



Some cards don't support changing vlan offloading settings.  Make
Ethtool set_flags return -EINVAL in those cases.

Reported-by: default avatarBen Hutchings <bhutchings@solarflare.com>
Signed-off-by: default avatarJesse Gross <jesse@nicira.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 0988c4c7
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -7528,7 +7528,7 @@ bnx2_set_flags(struct net_device *dev, u32 data)


	if (!(bp->flags & BNX2_FLAG_CAN_KEEP_VLAN) &&
	if (!(bp->flags & BNX2_FLAG_CAN_KEEP_VLAN) &&
	    !(data & ETH_FLAG_RXVLAN))
	    !(data & ETH_FLAG_RXVLAN))
		return -EOPNOTSUPP;
		return -EINVAL;


	rc = ethtool_op_set_flags(dev, data, ETH_FLAG_RXHASH | ETH_FLAG_RXVLAN |
	rc = ethtool_op_set_flags(dev, data, ETH_FLAG_RXHASH | ETH_FLAG_RXVLAN |
				  ETH_FLAG_TXVLAN);
				  ETH_FLAG_TXVLAN);
+1 −1
Original line number Original line Diff line number Diff line
@@ -1123,7 +1123,7 @@ static int bnx2x_set_flags(struct net_device *dev, u32 data)
	}
	}


	if (!(data & ETH_FLAG_RXVLAN))
	if (!(data & ETH_FLAG_RXVLAN))
		return -EOPNOTSUPP;
		return -EINVAL;


	if ((data & ETH_FLAG_LRO) && bp->rx_csum && bp->disable_tpa)
	if ((data & ETH_FLAG_LRO) && bp->rx_csum && bp->disable_tpa)
		return -EINVAL;
		return -EINVAL;