opnsense-src/sys/dev/hyperv/netvsc
Sepherosa Ziehau 719d2f1ad5 hyperv/hn: Improve sending performance
- Avoid main lock contention by trylock for if_start, if that fails,
  schedule TX taskqueue for if_start
- Don't do direct sending if the packet to be sent is large, e.g.
  TSO packet.

This change gives me stable 9.1Gbps TCP sending performance w/ TSO
over a 10Gbe directly connected network (the performance fluctuated
between 4Gbps and 9Gbps before this commit). It also improves non-
TSO TCP sending performance a lot.

Reviewed by:		adrian, royger
Approved by:		adrian (mentor)
Sponsored by:		Microsoft OSTC
Differential Revision:	https://reviews.freebsd.org/D5074
2016-01-26 09:42:13 +00:00
..
hv_net_vsc.c hyperv/hn: Partly rework transmission path 2016-01-25 05:01:32 +00:00
hv_net_vsc.h hyperv/hn: Improve sending performance 2016-01-26 09:42:13 +00:00
hv_netvsc_drv_freebsd.c hyperv/hn: Improve sending performance 2016-01-26 09:42:13 +00:00
hv_rndis.h hyperv/hn: Partly rework transmission path 2016-01-25 05:01:32 +00:00
hv_rndis_filter.c hyperv/hn: Partly rework transmission path 2016-01-25 05:01:32 +00:00
hv_rndis_filter.h hyperv/hn: Partly rework transmission path 2016-01-25 05:01:32 +00:00