ath9k: Enable support for cloned SKBS
authorPawel Kulakowski <pawel.kulakowski@tieto.com>
Fri, 18 Dec 2015 09:48:57 +0000 (10:48 +0100)
committerKalle Valo <kvalo@qca.qualcomm.com>
Thu, 7 Jan 2016 13:02:15 +0000 (15:02 +0200)
commit50e81e2f0b0a9fdb9e5bd515270680c7c281ce1f
treeb3d966f60b16f9142a9b20c60de15187ab4e33b2
parentea3ade75db690dc47c78a77d71dfd7c2df3bb15d
ath9k: Enable support for cloned SKBS

Ath9k driver does not modify tx skbs, so SUPPORTS_CLONED_SKBS
flag can be set. Enabling this flag significant reduce number
of copy operation during TCP Tx. This is especially noticeable
on platforms with slower CPU (lower CPU usage brings
profits in better TCP Tx troughput results).

Tested on MIPS with 560 MHz clock
Without CLONED_SKBS flag:
TCP Tx 145 Mb/s (iperf result)
__copy_user_common consumes 12.9% of CPU (result from perf tool)
0% CPU Idle

With CLONED_SKBS flag:
TCP Tx 170 Mb/s (iperf result)
__copy_user_common consumes 1.8% of CPU (result from perf tool)
12% CPU Idle

Signed-off-by: Pawel Kulakowski <pawel.kulakowski@tieto.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath9k/init.c