diff options
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnx2x')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 10 | ||||
-rw-r--r-- | drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 9 |
2 files changed, 12 insertions, 7 deletions
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index b10d1744e5ae..2ef202d10948 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | |||
@@ -4786,6 +4786,11 @@ int bnx2x_change_mtu(struct net_device *dev, int new_mtu) | |||
4786 | { | 4786 | { |
4787 | struct bnx2x *bp = netdev_priv(dev); | 4787 | struct bnx2x *bp = netdev_priv(dev); |
4788 | 4788 | ||
4789 | if (pci_num_vf(bp->pdev)) { | ||
4790 | DP(BNX2X_MSG_IOV, "VFs are enabled, can not change MTU\n"); | ||
4791 | return -EPERM; | ||
4792 | } | ||
4793 | |||
4789 | if (bp->recovery_state != BNX2X_RECOVERY_DONE) { | 4794 | if (bp->recovery_state != BNX2X_RECOVERY_DONE) { |
4790 | BNX2X_ERR("Can't perform change MTU during parity recovery\n"); | 4795 | BNX2X_ERR("Can't perform change MTU during parity recovery\n"); |
4791 | return -EAGAIN; | 4796 | return -EAGAIN; |
@@ -4938,11 +4943,6 @@ int bnx2x_resume(struct pci_dev *pdev) | |||
4938 | } | 4943 | } |
4939 | bp = netdev_priv(dev); | 4944 | bp = netdev_priv(dev); |
4940 | 4945 | ||
4941 | if (pci_num_vf(bp->pdev)) { | ||
4942 | DP(BNX2X_MSG_IOV, "VFs are enabled, can not change MTU\n"); | ||
4943 | return -EPERM; | ||
4944 | } | ||
4945 | |||
4946 | if (bp->recovery_state != BNX2X_RECOVERY_DONE) { | 4946 | if (bp->recovery_state != BNX2X_RECOVERY_DONE) { |
4947 | BNX2X_ERR("Handling parity error recovery. Try again later\n"); | 4947 | BNX2X_ERR("Handling parity error recovery. Try again later\n"); |
4948 | return -EAGAIN; | 4948 | return -EAGAIN; |
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c index 556dcc162a62..fd52ce95127e 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | |||
@@ -13371,8 +13371,13 @@ static int bnx2x_init_one(struct pci_dev *pdev, | |||
13371 | /* Management FW 'remembers' living interfaces. Allow it some time | 13371 | /* Management FW 'remembers' living interfaces. Allow it some time |
13372 | * to forget previously living interfaces, allowing a proper re-load. | 13372 | * to forget previously living interfaces, allowing a proper re-load. |
13373 | */ | 13373 | */ |
13374 | if (is_kdump_kernel()) | 13374 | if (is_kdump_kernel()) { |
13375 | msleep(5000); | 13375 | ktime_t now = ktime_get_boottime(); |
13376 | ktime_t fw_ready_time = ktime_set(5, 0); | ||
13377 | |||
13378 | if (ktime_before(now, fw_ready_time)) | ||
13379 | msleep(ktime_ms_delta(fw_ready_time, now)); | ||
13380 | } | ||
13376 | 13381 | ||
13377 | /* An estimated maximum supported CoS number according to the chip | 13382 | /* An estimated maximum supported CoS number according to the chip |
13378 | * version. | 13383 | * version. |