HomeFreeBSD

MFC 295296,295297,295298,295299,295300,295301

Description

MFC 295296,295297,295298,295299,295300,295301

295296

hyperv/hn: Avoid duplicate csum features settings

- Record csum features in softc, so we don't need to duplicate the
  logic from attach path to ioctl path.
- Protect if_capenable and if_hwassist changes by main lock.
- Prefer turn on/off bits in if_hwassist explicitly instead of using
  XOR.

Reviewed by:        adrian, Hongjiang Zhang <honzhan microsoft com>
Approved by:        adrian (mentor)
MFC after:  1 week
Sponsored by:       Microsoft OSTC
Differential Revision:      https://reviews.freebsd.org/D5085

295297

hyperv/hn: Reorganize TX csum offloading

- For non-TSO offloading, we don't need to access mbuf to know
  which csum offloading is requested, we can just use the
  CSUM_{IP,TCP,UDP} in the csum_flags.
- For TSO offloading, we still can depend on CSUM_{TSO4,TSO6}
  in the csum_flags to tell whether the TSO packet is an IPv4
  TSO packet or an IPv6 TSO packet.

This streamlines csum offloading handling (remove the two goto)
and allows us the nuke the unnecessary get_transport_proto_type().

Reviewed by:        adrian, Hongjiang Zhang <honzhan microsoft com>
Approved by:        adrian (mentor)
MFC after:  1 week
Sponsored by:       Microsoft OSTC
Differential Revision:      https://reviews.freebsd.org/D5098

295298

hyperv/hn: Enable IP header checksum offloading

So that:
- TCP/IP stack will not do unnecessary IP header checksum for TSO
  packets.
- Reduce guest load for non-TSO IP packets.

Reviewed by:        adrian
Approved by:        adrian (mentor)
MFC after:  1 week
Sponsored by:       Microsoft OSTC
Differential Revision:      https://reviews.freebsd.org/D5099

295299

hyperv/hn: Enable UDP RXCSUM

Reviewed by:        adrian
Approved by:        adrian (mentor)
MFC after:  1 week
Sponsored by:       Microsoft OSTC
Differential Revision:      https://reviews.freebsd.org/D5102

295300

hyperv/hn: Add sysctls to trust host side UDP and IP csum verification

Reviewed by:        adrian, Hongjiang Zhang <honzhan microsoft com>
Approved by:        adrian (mentor)
MFC after:  1 week
Sponsored by:       Microsoft OSTC
Differential Revision:      https://reviews.freebsd.org/D5103

295301

hyperv/hn: Obey IFCAP_RXCSUM configure

Reviewed by:        adrian
Approved by:        adrian (mentor)
MFC after:  1 week
Sponsored by:       Microsoft OSTC
Differential Revision:      https://reviews.freebsd.org/D5104

Details

Provenance
sepheAuthored on
Parents
rS301855: MFC 295295
Branches
Unknown
Tags
Unknown