Summary: | [hyper-v] hn driver drops UDP traffic with EIO error when TXCSUM_IPV6 flag on | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Base System | Reporter: | matt_ <dslr.rfmGJfQJmFc9Qt9a> | ||||||
Component: | kern | Assignee: | freebsd-virtualization (Nobody) <virtualization> | ||||||
Status: | Closed FIXED | ||||||||
Severity: | Affects Some People | CC: | decui, franco, gonzo, kevin.j.morse, weh, whu | ||||||
Priority: | --- | ||||||||
Version: | CURRENT | ||||||||
Hardware: | Any | ||||||||
OS: | Any | ||||||||
Attachments: |
|
Description
matt_
2018-09-29 07:36:14 UTC
I was seeing the same "transmit failed: Input/output error" which resulted in no IPv6 connectivity for me. I can confirm that disabling checksum offloading prevents the error and brings back my IPv6 connectivity. Created attachment 197807 [details]
Patch to not discard UDPv6
(In reply to Kevin from comment #2) Thanks Kevin for the patch! At a glance, it looks good to me (sorry, I don't have a setup to test this right away). @matt_ : can you please also test the patch? Thanks for this patch! When will it land? FWIW, the bitwise & should be changed to && and the inner parenthesis are not strictly needed. :) Cheers, Franco Created attachment 198333 [details]
Updated patch to not discard UDPv6
Hi Franco,
Thanks for the review. I believe the team from Microsoft is reviewing the patch right now since they emailed me about the bitwise &.
It was actually a typo which I have fixed in this patch. Functionally the & worked but switching to && should be faster since && can "short-circuit".
Kevin
A commit references this bug: Author: whu Date: Mon Oct 22 11:23:51 UTC 2018 New revision: 339585 URL: https://svnweb.freebsd.org/changeset/base/339585 Log: Do not trop UDP traffic when TXCSUM_IPV6 flag is on PR: 231797 Submitted by: whu Reviewed by: dexuan Obtained from: Kevin Morse MFC after: 3 days Sponsored by: Microsoft Differential Revision: https://bugs.freebsd.org/bugzilla/attachment.cgi?id=198333&action=diff Changes: head/sys/dev/hyperv/netvsc/if_hn.c A commit references this bug: Author: whu Date: Mon Oct 29 15:12:16 UTC 2018 New revision: 339863 URL: https://svnweb.freebsd.org/changeset/base/339863 Log: MFC: 339585 r339585: Do not drop UDP traffic when TXCSUM_IPV6 flag is on PR: 231797 Submitted by: whu Reviewed by: dexuan Obtained from: Kevin Morse Sponsored by: Microsoft Differential Revision: https://bugs.freebsd.org/bugzilla/attachment.cgi?id=198333&action=diff Changes: _U stable/11/ stable/11/sys/dev/hyperv/netvsc/if_hn.c A commit references this bug: Author: whu Date: Wed Oct 31 06:24:08 UTC 2018 New revision: 339942 URL: https://svnweb.freebsd.org/changeset/base/339942 Log: MFC: 339585 r339585: Do not drop UDP traffic when TXCSUM_IPV6 flag is on PR: 231797 Submitted by: whu Reviewed by: dexuan Obtained from: Kevin Morse Sponsored by: Microsoft Changes: _U stable/10/ stable/10/sys/dev/hyperv/netvsc/if_hn.c A commit references this bug: Author: whu Date: Thu Nov 1 08:08:08 UTC 2018 New revision: 339984 URL: https://svnweb.freebsd.org/changeset/base/339984 Log: MFC r339585: Do not drop UDP traffic when TXCSUM_IPV6 flag is on. PR: 231797 Submitted by: whu Reviewed by: dexuan Obtained from: Kevin Morse Approved by: re (rgrimes) Sponsored by: Microsoft Changes: _U stable/12/ stable/12/sys/dev/hyperv/netvsc/if_hn.c There is a commit referencing this PR, but it's still not closed and has been inactive for some time. Closing the PR as fixed but feel free to re-open it if the issue hasn't been completely resolved. Thanks |