Re: [PATCH net-next v2] hinic: add set_channels ethtool_ops support
From: luobin (L) <hidden>
Date: 2020-05-30 01:30:40
Also in:
lkml
On 2020/5/30 1:44, Jakub Kicinski wrote:
On Thu, 28 May 2020 18:36:33 +0000 Luo bin wrote:quoted
add support to change TX/RX queue number with ethtool -L Signed-off-by: Luo bin <redacted>Luo bin, your patches continue to come with Date: header being in the past. Also suspiciously no time zone offset. Can you address this?quoted
+static int hinic_set_channels(struct net_device *netdev, + struct ethtool_channels *channels) +{ + struct hinic_dev *nic_dev = netdev_priv(netdev); + unsigned int count = channels->combined_count; + int err; + + if (!count) { + netif_err(nic_dev, drv, netdev, + "Unsupported combined_count: 0\n"); + return -EINVAL; + }This check has been added to the core since the last version of you patch: /* ensure there is at least one RX and one TX channel */ if (!channels.combined_count && (!channels.rx_count || !channels.tx_count)) return -EINVAL;quoted
+ netif_info(nic_dev, drv, netdev, "Set max combined queue number from %d to %d\n", + hinic_hwdev_num_qps(nic_dev->hwdev), count); + + if (netif_running(netdev)) { + netif_info(nic_dev, drv, netdev, "Restarting netdev\n"); + hinic_close(netdev); + + nic_dev->hwdev->nic_cap.num_qps = count; + + err = hinic_open(netdev); + if (err) { + netif_err(nic_dev, drv, netdev, + "Failed to open netdev\n"); + return -EFAULT; + } + } else { + nic_dev->hwdev->nic_cap.num_qps = count; + } + + return 0; }Will fix. Thanks. .