diff options
author | Ioana Radulescu <ruxandra.radulescu@freescale.com> | 2013-01-29 21:16:55 (GMT) |
---|---|---|
committer | Fleming Andrew-AFLEMING <AFLEMING@freescale.com> | 2013-04-08 23:10:36 (GMT) |
commit | 5137280f9d74d4d9a933e7334f959dc5a1929082 (patch) | |
tree | ca29bff2ad13cffed94d307f73032d03ecc74e0c /drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c | |
parent | b4577d8d3eee5386be6d6b1f9773eefe61e6ab01 (diff) | |
download | linux-fsl-qoriq-5137280f9d74d4d9a933e7334f959dc5a1929082.tar.xz |
dpaa_eth: Use per-cpu Tx confirmation queues
Up until now, each Ethernet private interface used to have a number of
Tx queues equal to the number of cpus but a single (default) confirmation
queue. Switch to using a per-core confirmation queue for each Tx queue,
such that for frames sent by a core their respective confirmation will be
processed by the same core.
This, on one hand, improves cache utilization, and on the other hand avoids
dequeueing from a pool channel queue, which incurs a performance penalty
due to a QMan erratum.
This change does not affect shared, MAC-less or proxy interfaces.
Change-Id: I4effd0728b1df94d4adb1cbc507f706303f043ff
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com>
(cherry picked from commit 864059e4716e178b98c5d8f90c72a76080dd3ec1)
Reviewed-on: http://git.am.freescale.net:8181/1038
Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
Diffstat (limited to 'drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c')
-rw-r--r-- | drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c b/drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c index f636d6b..97b31fb 100644 --- a/drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c +++ b/drivers/net/ethernet/freescale/dpa/dpaa_eth_sg.c @@ -787,7 +787,7 @@ int __hot dpa_tx(struct sk_buff *skb, struct net_device *net_dev) clear_fd(&fd); - queue_mapping = skb_get_queue_mapping(skb); + queue_mapping = smp_processor_id(); #ifdef CONFIG_FSL_DPA_1588 |