diff options
author | Jason Wang <jasowang@redhat.com> | 2013-07-25 05:00:33 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-07-28 03:09:21 (GMT) |
commit | 6680ec68eff47d36f67b4351bc9836fd6cba9532 (patch) | |
tree | 63966849a766004bb64fbc409d808ad8b5fe8bd4 /drivers/net/usb/usbnet.c | |
parent | 024ec3deac33ddbd81f3c887506f132b24ea21a7 (diff) | |
download | linux-fsl-qoriq-6680ec68eff47d36f67b4351bc9836fd6cba9532.tar.xz |
tuntap: hardware vlan tx support
Inspired by commit f09e2249c4f5c7c13261ec73f5a7807076af0c8e (macvtap: restore
vlan header on user read). This patch adds hardware vlan tx support for
tuntap. This is done by copying vlan header directly into userspace in
tun_put_user() instead of doing it through __vlan_put_tag() in
dev_hard_start_xmit(). This eliminates one unnecessary memmove() in
vlan_insert_tag() for 802.1ad and 802.1q traffic.
pktgen test shows about 20% improvement for 802.1q traffic:
Before:
662149pps 317Mb/sec (317831520bps) errors: 0
After:
801033pps 384Mb/sec (384495840bps) errors: 0
Cc: Basil Gor <basil.gor@gmail.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/usb/usbnet.c')
0 files changed, 0 insertions, 0 deletions