]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
hyperv/hn: Partly rework transmission path
authorsephe <sephe@FreeBSD.org>
Mon, 25 Jan 2016 05:01:32 +0000 (05:01 +0000)
committersephe <sephe@FreeBSD.org>
Mon, 25 Jan 2016 05:01:32 +0000 (05:01 +0000)
commit0a5322d713fae91f59f47ae6ebe361fa5e68c91f
tree8d3577815964d0c9cc3d107cd85e3afffbfcc89e
parentaa1ae9936261cc033254821a7064bcf4f2325a66
hyperv/hn: Partly rework transmission path

- Avoid unnecessary malloc/free on transmission path.
- busdma(9)-fy transmission path.
- Properly handle IFF_DRV_OACTIVE.  This should fix the network
  stalls reported by many.
- Properly setup TSO parameters.
- Properly handle bpf(4) tapping.  This 5 times the performance
  during TCP sending test, when there is one bpf(4) attached.
- Allow size of chimney sending be tuned on a running system.
  Default value still needs more test to determine.

Reviewed by: adrian, delphij
Approved by: adrian (mentor)
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D4972
sys/dev/hyperv/netvsc/hv_net_vsc.c
sys/dev/hyperv/netvsc/hv_net_vsc.h
sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c
sys/dev/hyperv/netvsc/hv_rndis.h
sys/dev/hyperv/netvsc/hv_rndis_filter.c
sys/dev/hyperv/netvsc/hv_rndis_filter.h