Date: Thu, 28 Jan 2016 05:18:54 +0000 From: "sepherosa_gmail.com (Sepherosa Ziehau)" <phabric-noreply@FreeBSD.org> To: freebsd-net@freebsd.org Subject: [Differential] [Request, 5 lines] D5099: hyperv/hn: Enable IP header checksum offloading Message-ID: <differential-rev-PHID-DREV-px4dekca4zurcmyqbhmi-req@FreeBSD.org>
next in thread | raw e-mail | index | archive | help
--b1_8433498bc71f02aa1a01066b952a0fad Content-Type: text/plain; charset = "utf-8" Content-Transfer-Encoding: 8bit sepherosa_gmail.com created this revision. sepherosa_gmail.com added reviewers: network, adrian, delphij, royger, decui_microsoft.com, honzhan_microsoft.com, howard0su_gmail.com. sepherosa_gmail.com added a subscriber: freebsd-net-list. REVISION SUMMARY - TCP/IP stack will not do unnecessary IP header checksum for TSO packets - Reduce guest load for non-TSO IP packets. REVISION DETAIL https://reviews.freebsd.org/D5099 AFFECTED FILES sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c CHANGE DETAILS diff --git a/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c b/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c --- a/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c +++ b/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c @@ -172,7 +172,7 @@ * Windows releases. */ #define HN_CSUM_ASSIST_WIN8 (CSUM_TCP) -#define HN_CSUM_ASSIST (CSUM_UDP | CSUM_TCP) +#define HN_CSUM_ASSIST (CSUM_IP | CSUM_UDP | CSUM_TCP) /* XXX move to netinet/tcp_lro.h */ #define HN_LRO_HIWAT_MAX 65535 @@ -867,6 +867,9 @@ rppi->per_packet_info_offset); csum_info->xmit.is_ipv4 = 1; + if (m_head->m_pkthdr.csum_flags & CSUM_IP) + csum_info->xmit.ip_header_csum = 1; + if (m_head->m_pkthdr.csum_flags & CSUM_TCP) { csum_info->xmit.tcp_csum = 1; csum_info->xmit.tcp_header_offset = 0; EMAIL PREFERENCES https://reviews.freebsd.org/settings/panel/emailpreferences/ To: sepherosa_gmail.com, network, adrian, delphij, royger, decui_microsoft.com, honzhan_microsoft.com, howard0su_gmail.com Cc: freebsd-net-list --b1_8433498bc71f02aa1a01066b952a0fad Content-Type: text/x-patch; charset=utf-8; name="D5099.12775.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="D5099.12775.patch" ZGlmZiAtLWdpdCBhL3N5cy9kZXYvaHlwZXJ2L25ldHZzYy9odl9uZXR2c2NfZHJ2X2ZyZWVic2Qu YyBiL3N5cy9kZXYvaHlwZXJ2L25ldHZzYy9odl9uZXR2c2NfZHJ2X2ZyZWVic2QuYwotLS0gYS9z eXMvZGV2L2h5cGVydi9uZXR2c2MvaHZfbmV0dnNjX2Rydl9mcmVlYnNkLmMKKysrIGIvc3lzL2Rl di9oeXBlcnYvbmV0dnNjL2h2X25ldHZzY19kcnZfZnJlZWJzZC5jCkBAIC0xNzIsNyArMTcyLDcg QEAKICAqIFdpbmRvd3MgcmVsZWFzZXMuCiAgKi8KICNkZWZpbmUgSE5fQ1NVTV9BU1NJU1RfV0lO OAkoQ1NVTV9UQ1ApCi0jZGVmaW5lIEhOX0NTVU1fQVNTSVNUCQkoQ1NVTV9VRFAgfCBDU1VNX1RD UCkKKyNkZWZpbmUgSE5fQ1NVTV9BU1NJU1QJCShDU1VNX0lQIHwgQ1NVTV9VRFAgfCBDU1VNX1RD UCkKIAogLyogWFhYIG1vdmUgdG8gbmV0aW5ldC90Y3BfbHJvLmggKi8KICNkZWZpbmUgSE5fTFJP X0hJV0FUX01BWAkJCQk2NTUzNQpAQCAtODY3LDYgKzg2Nyw5IEBACiAJCQkgICAgcnBwaS0+cGVy X3BhY2tldF9pbmZvX29mZnNldCk7CiAKIAkJCWNzdW1faW5mby0+eG1pdC5pc19pcHY0ID0gMTsK KwkJCWlmIChtX2hlYWQtPm1fcGt0aGRyLmNzdW1fZmxhZ3MgJiBDU1VNX0lQKQorCQkJCWNzdW1f aW5mby0+eG1pdC5pcF9oZWFkZXJfY3N1bSA9IDE7CisKIAkJCWlmIChtX2hlYWQtPm1fcGt0aGRy LmNzdW1fZmxhZ3MgJiBDU1VNX1RDUCkgewogCQkJCWNzdW1faW5mby0+eG1pdC50Y3BfY3N1bSA9 IDE7CiAJCQkJY3N1bV9pbmZvLT54bWl0LnRjcF9oZWFkZXJfb2Zmc2V0ID0gMDsKCg== --b1_8433498bc71f02aa1a01066b952a0fad--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?differential-rev-PHID-DREV-px4dekca4zurcmyqbhmi-req>