Message ID | 4a7ecec08ee30ad8004019818fadf1e58057e945.1674137153.git.leon@kernel.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [rdma-rc] IB/IPoIB: Fix legacy IPoIB due to wrong number of queues | expand |
On Thu, Jan 19, 2023 at 04:06:13PM +0200, Leon Romanovsky wrote: > From: Dragos Tatulea <dtatulea@nvidia.com> <...> > + err = netif_set_real_num_tx_queues(dev, pdev->real_num_tx_queues); > + if (err) { > + ipoib_warn(ppriv, "failed setting the child tx queue count based on parent\n"); > + return err; > + } > + > + err = netif_set_real_num_rx_queues(dev, pdev->real_num_rx_queues); > + if (err) { > + ipoib_warn(ppriv, "failed setting the child rx queue count based on parent\m"); ^^^^ strange, I thought what I fixed it prior sending. I'll resend. > + return err; > + } > + > err = ipoib_intf_init(ppriv->ca, ppriv->port, dev->name, dev); > if (err) { > ipoib_warn(ppriv, "failed to initialize pkey device\n"); > -- > 2.39.0 >
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_netlink.c b/drivers/infiniband/ulp/ipoib/ipoib_netlink.c index 9ad8d9856275..589ae7af33ea 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_netlink.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_netlink.c @@ -126,6 +126,18 @@ static int ipoib_new_child_link(struct net *src_net, struct net_device *dev, } else child_pkey = nla_get_u16(data[IFLA_IPOIB_PKEY]); + err = netif_set_real_num_tx_queues(dev, pdev->real_num_tx_queues); + if (err) { + ipoib_warn(ppriv, "failed setting the child tx queue count based on parent\n"); + return err; + } + + err = netif_set_real_num_rx_queues(dev, pdev->real_num_rx_queues); + if (err) { + ipoib_warn(ppriv, "failed setting the child rx queue count based on parent\m"); + return err; + } + err = ipoib_intf_init(ppriv->ca, ppriv->port, dev->name, dev); if (err) { ipoib_warn(ppriv, "failed to initialize pkey device\n");