netvsc: negotiate checksum and segmentation parameters
authorstephen hemminger <stephen@networkplumber.org>
Tue, 24 Jan 2017 21:05:59 +0000 (13:05 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 24 Jan 2017 21:28:57 +0000 (16:28 -0500)
commit23312a3be999c22ec70c0fdf9f01cdee05fac986
tree67c073649ed33137e6f6735cf7f29743c3029781
parent0b307ebd6834012c483b8ee9801164123a54f79a
netvsc: negotiate checksum and segmentation parameters

Redo how Hyper-V network driver negotiates offload features. Query the
host to determine offload settings, and use the result.

Also:
  * disable IPv4 header checksum offload (not used by Linux)
  * enable TSO only if host supports
  * enable UDP checksum offload if supported
  * don't advertise support for checksumming of non-IP protocols
  * adjust GSO maximum segment size
  * enable HIGHDMA

Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/hyperv/hyperv_net.h
drivers/net/hyperv/netvsc_drv.c
drivers/net/hyperv/rndis_filter.c