Subject: Re: [PATCH net-next] tuntap: hardware vlan tx support

From: Jason Wang <[email-masked]>
Date: Wed, 24 Jul 2013 12:41:36 +0800

On 07/23/2013 11:17 PM, Stephen Hemminger wrote:
> On Tue, 23 Jul 2013 15:15:48 +0800
> Jason Wang <[email-masked]> wrote:
>
>> 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 memove 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 <[email-masked]>
>> Cc: Michael S. Tsirkin <[email-masked]>
>> Signed-off-by: Jason Wang <[email-masked]>
>
> You need to make this configurable by some mechanism, since otherwise
> it will break applications that expect current VLAN behavior
> --
>

Didn't see any breakage. Vlan id will always exist in the userspace buffer.