Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 May 2020 16:39:00 -0700
From:      Adrian Chadd <adrian@freebsd.org>
To:        Hans Petter Selasky <hps@selasky.org>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: iflib and options RSS is a no go for igbX
Message-ID:  <CAJ-VmokpniZsy0g0dYjbfUtcwgjbF8sEYdj1C9viRAkuff4Cmw@mail.gmail.com>
In-Reply-To: <3e491993-aa46-9e16-0105-b79cbee6b2a3@selasky.org>
References:  <3e491993-aa46-9e16-0105-b79cbee6b2a3@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
reply to all this time:

On Tue, 26 May 2020 at 02:03, Hans Petter Selasky <hps@selasky.org> wrote:
>
> Hi,
>
> I just found a bug where outgoing TCP connections over igb0 doesn't work
> because likely the software computed hash is wrong, so the incoming
> packets get dropped because they are received on the wrong queue.
>
> It is the management port, so I'm just using this hack for now:
>
> dev.igb.0.iflib.override_nrxqs=1
> dev.igb.0.iflib.override_ntxqs=1

Did iflib + RSS get broken? Cause it used to work just fine when I was
still doing networking stuff at norse, and igb was one of the
supported pieces of hardware I fixed up RSS on. The trick was
literally making sure the tcp/udp l3 / l4 hash configuration was
setup right (which it was by default for at least igb, where RSS
worked!) and the hardware programmed in the right RSS key.

Outbound connections would work fine, but they wouldn't be created
in the local RSS CPU because you didn't know the details until you
finished creating a socket. But all the hijinx were done behind the scenes
so things got lined up in the right queues.

I can go setup my second PC this week (I have PTO!) and go see if I
have any PCIe igb hardware here. I /think/ I do but it's fibre.




-adrian



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