Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Aug 2007 20:28:06 +0200
From:      Andre Oppermann <andre@freebsd.org>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        freebsd-current@freebsd.org
Subject:   Re: IPSEC disables TSO
Message-ID:  <46C5E8B6.7070807@freebsd.org>
In-Reply-To: <18116.43755.107638.103132@grasshopper.cs.duke.edu>
References:  <18116.43755.107638.103132@grasshopper.cs.duke.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46C5E8B6.7070807>