Re: [PATCH net-next] net: netdev_pick_tx: use get_xps_q if xps mapis set

From: govind
Date: Fri May 17 2013 - 15:50:36 EST


On 05/17/2013 07:05 PM, Eric Dumazet wrote:
On Fri, 2013-05-17 at 14:18 +0530, govindarajulu.v wrote:
From: "govindarajulu.v" <govindarajulu90@xxxxxxxxx>

netdev_pick_tx ignores the xps map configuration if netdev->ndo_select_queue
is defined. Most of the drivers define ndo_select_queue. The problem with this
is, if admin wants kernel to pick tx queue based on xps map (instead of driver
defined ndo_select_queue), he has to netdev->ndo_select_queue = NULL, compile
and reload.

This patch fixes it by checking if dev->xps_maps is defined. If yes it
proceeds with get_xps_queue. If not it proceeds with netdev->ndo_select_queue
(if defined).

Compile test only.

I do not think its right, take a look at
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c , around line 6467

I see. In ixgbe_select_queue we use __netdev_pick_tx only if packet is not
FCOE & FIP.

If you see
bnx2x_select_queue in drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c, line 1832
and mlx4_en_select_queue in drivers/net/ethernet/mellanox/mlx4/en_tx.c, line 547.
we cannot have xps working with these drivers.

This needs to be fixed by replacing __skb_tx_hash with __netdev_pick_tx. Am i correct?

thanks
//govind
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/