> >greater than the maximum header size which is configurable. In the case
> >of VXLAN / STT we can be in the case above, because of the UDP/TCP like
> >packet
> 
> [Nithin]: Yes, in fact even for NICs that support header-split (mostly Intel),
[Alin Gabriel Serdean: ] I looked over some Intel specs and they said you could 
header split after eth header on a RQ.
The documentation is very shady between NDIS versions, you are right, I will 
allocate a buffer if the memory was not contiguous.
I found this in the document when header data split was introduced:
" •     Do not assume that the minimum size of the data in the first MDL 
contains all of the TCP/IP headers."
Thanks for the patience of reiterating that we should not make assumptions :).
> the payload of the packet WILL NOT be in the first MDL. In case of GRE, the
> split would happen at the IP header itself. So, GRE header would not be in
> the contigous buffer.
> 
> >, but for GRE things differ since there are cards which support
> >offloading:
> >https://urldefense.proofpoint.com/v2/url?u=https-
> 3A__msdn.microsoft.com
> >_en
> >-2Dus_library_windows_hardware_dn605832-28v-3Dvs.85-
> 29.aspx&d=CwIFAA&c=
> >Sqc
> >l0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-
> uEs&r=pNHQcdr7B40b4h6Yb7FIedI1dnBs
> >xdD
> >uTLBYD3JqV80&m=Xih_0c1MPDafKSkW1nO5-
> mIutm1WK_ZmMcu7likx3jM&s=A4LA4vS20h
> >f4l
> >keq-wjCc6N9kbBMqswRnC-SSulTF6s&e=
> >"The protocol driver will guarantee that all the prepended
> >encapsulation headers (ETH, IP, GRE) will be physically contiguous and
> >will be in the first MDL of the packet."
> 
> 
> >I do not think we will be in a situation in which a GRE header will not
> >be continuous.
> >If you consider we should still have a fragmented header problem, I
> >will allocate a buffer and execute another NdisGetDataBuffer call if
> >the first one failed.
> 
> [Nithin]: The documention you point to is to the send direction. In case of
> receive, where does it say that the protocol/filter driver can expect the
> miniport driver to pack the ETH + IP + GRE header in one contiguous buffer?
[Alin Gabriel Serdean: ] 
https://msdn.microsoft.com/en-us/library/windows/hardware/dn605831(v=vs.85).aspx
> 
> In any case, if you are particular that the code is correct, I am ok with the
> patch. I was trying to give suggestions to make the code solid.
> 
> Acked-by: Nithin Raju <nit...@vmware.com>
> 
> -- Nithin

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to