Commit c2af034
netkvm: set ipHeaderOffset to ETH_HEADER_SIZE
If Windows is configured to disable checksum offloading for IPv4 and IPv6,
it does not use OID_OFFLOAD_ENCAPSULATION OID to set offload encapsulation.
As the result, OnSetOffloadEncapsulation is not executed and it makes,
ipHeaderOffset remain zero. It will break CNB::SetupCSO and it will set
VirtioHeader->csum_start to the wrong value (not to the offset where IP
header begins). Effectively, it will affect the checksum offloading resulting
in packets being dropped somewhere on the path and network connectivity inside
the guest will be affected.
With the proposed change, we set ipHeaderOffset to ETH_HEADER_SIZE by default
and it helps avoid the problem if/when OnSetOffloadEncapsulation is not called
Signed-off-by: Sergey Bykov <sergey.bykov@nutanix.com>1 parent 5b565d5 commit c2af034
1 file changed
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
298 | 298 | | |
299 | 299 | | |
300 | 300 | | |
| 301 | + | |
301 | 302 | | |
302 | 303 | | |
303 | 304 | | |
| |||
0 commit comments