none
HCK NDIS 6.5 tests: : Weird behaviour of Offload LSO with NVGRE tests RRS feed

  • Question

  • Hi,

     We are running OffloadLso test with following features enabled 

    1. LSOV1

    2. LSOv2 including IPV4 option, IPV6 ext header support

    3. NVGRE LSO support for all headers

    While testing GRE LSO, we see some bogus packet coming from the HCK test to  NDIS stack to miniport driver and onto NIC for LSO offload.

    We suspect that there is some weirdness in this particular test with NVGRE ,  based on the packets I captured in wireshark and LSO errors that we  get from device.

    In the so called boguspackets, we see that outer IPV4,  GRE Header and inner IPV6 headers are traversable. But locating the TCP header based on the content of the Inner IPV6 results, results in wrong/bogus tcp data with  zero tcp header length or All tcp header flags set (fin, ack, psh and even reserved)  and so on, with which we cannot process the LSO chunking and the packet is dropped.

    We further observed that the IPV6 header does not include the extension header that succeeds the IPV6 and if we for experiment make the modification to consider IPV6 header, then TCP header is properly located.

    And every run, different combination of test variations fail and all of the type IPV4+GRE+IPV6+<??>;

    Has anyone one seen this? Is  it a bug with NVGRE offload in HCK tests?

    Thanks

    Deva

    Tuesday, April 28, 2015 8:43 AM