|
@@ -2343,10 +2343,9 @@ static int igbvf_change_mtu(struct net_device *netdev, int new_mtu)
|
|
|
struct igbvf_adapter *adapter = netdev_priv(netdev);
|
|
|
int max_frame = new_mtu + ETH_HLEN + ETH_FCS_LEN;
|
|
|
|
|
|
- if ((new_mtu < 68) || (max_frame > MAX_JUMBO_FRAME_SIZE)) {
|
|
|
- dev_err(&adapter->pdev->dev, "Invalid MTU setting\n");
|
|
|
+ if (new_mtu < 68 || new_mtu > INT_MAX - ETH_HLEN - ETH_FCS_LEN ||
|
|
|
+ max_frame > MAX_JUMBO_FRAME_SIZE)
|
|
|
return -EINVAL;
|
|
|
- }
|
|
|
|
|
|
#define MAX_STD_JUMBO_FRAME_SIZE 9234
|
|
|
if (max_frame > MAX_STD_JUMBO_FRAME_SIZE) {
|