IPSEC disables TSO

Andre Oppermann andre at freebsd.org
Fri Aug 17 11:28:08 PDT 2007


Andrew Gallatin wrote:
> When tracking down an mxge 10GbE performance issue, I noticed that
> simply compiling IPSEC into the kernel totally destroys 10GbE transmit
> performance because it will silently disable TSO.
> 
> The problem seems to be at least that the test on line 463 of
> tcp_output.c (tp->t_inpcb->inp_sp == NULL) will always be
> false.   If I comment that line out, TSO works as normal
> (though I have no idea what would happen on an IPSEC connection).
> 
> Is there some way to make this not happen?  I believe that the mxge
> user simply wanted to run some handful of applications through ipsec
> tunnels (perhaps even on a different NIC entirely).

The idea was that ip->t_inpcb->inp_sp is NULL when no SP is active.
This may no longer be the case after the FAST_IPSEC -> IPSEC switch
and this test may have to be reevaluated.

-- 
Andre



More information about the freebsd-current mailing list