net/hns3: remove restriction on setting VF MTU
authorChengchang Tang <tangchengchang@huawei.com>
Mon, 9 Mar 2020 09:32:41 +0000 (17:32 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 18 Mar 2020 09:21:42 +0000 (10:21 +0100)
The hns3 PF/VF devices on the same port share the hardware MTU
configuration. Currently, we send mailbox to inform hns3 PF kernel
ethdev driver to finish hardware MTU configuration in hns3 VF PMD
driver, there is no need to stop the port for hns3 VF device, and
the MTU value issued by hns3 VF PMD driver must be less than or
equal to PF's MTU.

Signed-off-by: Chengchang Tang <tangchengchang@huawei.com>
Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
drivers/net/hns3/hns3_ethdev_vf.c

index 0239d5e..0c79202 100644 (file)
@@ -619,12 +619,14 @@ hns3vf_dev_mtu_set(struct rte_eth_dev *dev, uint16_t mtu)
        uint32_t frame_size = mtu + HNS3_ETH_OVERHEAD;
        int ret;
 
-       if (dev->data->dev_started) {
-               hns3_err(hw, "Failed to set mtu, port %u must be stopped "
-                        "before configuration", dev->data->port_id);
-               return -EBUSY;
-       }
-
+       /*
+        * The hns3 PF/VF devices on the same port share the hardware MTU
+        * configuration. Currently, we send mailbox to inform hns3 PF kernel
+        * ethdev driver to finish hardware MTU configuration in hns3 VF PMD
+        * driver, there is no need to stop the port for hns3 VF device, and the
+        * MTU value issued by hns3 VF PMD driver must be less than or equal to
+        * PF's MTU.
+        */
        if (rte_atomic16_read(&hw->reset.resetting)) {
                hns3_err(hw, "Failed to set mtu during resetting");
                return -EIO;