Re: [PATCH net-next v2] hinic: add set_channels ethtool_ops support

From: Jakub Kicinski
Date: Fri May 29 2020 - 13:44:28 EST


On Thu, 28 May 2020 18:36:33 +0000 Luo bin wrote:
> add support to change TX/RX queue number with ethtool -L
>
> Signed-off-by: Luo bin <luobin9@xxxxxxxxxx>

Luo bin, your patches continue to come with Date: header being in the
past. Also suspiciously no time zone offset. Can you address this?

> +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;

> + 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;
> }