Question on TSO/LSO Transmit Frames
YongHyeon PYUN
pyunyh at gmail.com
Fri Feb 17 05:36:58 UTC 2012
On Thu, Feb 16, 2012 at 10:03:54AM -0800, David Somayajulu wrote:
> Hi All,
> Is it safe to assume that when a driver receives an Ethernet frame to transmit with CSUM_TSO bit set in
>
> m_head->m_pkthdr.csum_flags ; where m_head is the first (struct mbuf) in the mbuf chain
>
> that the [Ethernet Header] + [VLAN Tag if present] + [IP Header] + [TCP Header] are all present in one physically contiguous segment ?
>
No it is not. This is the main reason why TSO capable drivers parse
mbuf chain in TX path.
> In other words is
>
> Size of ([Ethernet Header] + [VLAN Tag if present] + [IP Header] + [TCP Header]) <= m_head->m_len
>
> When ((m_head->m_pkthdr.csum_flags & CSUM_TSO) != 0)
>
> Thanks
> David S.
More information about the freebsd-net
mailing list