diff options
author | Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> | 2014-01-08 13:50:49 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-01-09 19:56:39 +0400 |
commit | 1cbbcb08c786964a16773c39f2536f1923c73c58 (patch) | |
tree | 31dce2e250beea3fed5d17b139a48788f98cb0f9 | |
parent | df2d08eed2a38cee971b3f2ff132d8369471404e (diff) | |
download | linux-1cbbcb08c786964a16773c39f2536f1923c73c58.tar.xz |
wil6210: prefetch head of packet
As soon as skb is ready to be reaped, prefetch 1-st cache line.
This accelerates data access that is performed later, during the
packet classification by the driver and IP stack.
Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/ath/wil6210/txrx.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wil6210/txrx.c b/drivers/net/wireless/ath/wil6210/txrx.c index 18003c0d5141..9b88440ef05b 100644 --- a/drivers/net/wireless/ath/wil6210/txrx.c +++ b/drivers/net/wireless/ath/wil6210/txrx.c @@ -21,6 +21,7 @@ #include <linux/ip.h> #include <linux/ipv6.h> #include <net/ipv6.h> +#include <asm/processor.h> #include "wil6210.h" #include "wmi.h" @@ -377,6 +378,8 @@ static struct sk_buff *wil_vring_reap_rx(struct wil6210_priv *wil, } skb_trim(skb, dmalen); + prefetch(skb->data); + wil_hex_dump_txrx("Rx ", DUMP_PREFIX_OFFSET, 16, 1, skb->data, skb_headlen(skb), false); |