Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Oct 2012 11:09:20 +0200
From:      =?iso-8859-1?Q?R=E9mi_Pauchet?= <remi.pauchet@netasq.com>
To:        Gleb Smirnoff <glebius@FreeBSD.org>
Cc:        freebsd-net@FreeBSD.org
Subject:   Re: panic ixgbevf / SMP under high network load
Message-ID:  <AE47060F-235A-4F07-B840-06A2D7DCB75D@netasq.com>
In-Reply-To: <20121025164031.GA70741@FreeBSD.org>
References:  <B722D1A8-AA5F-4B80-8F84-B3935D72A498@netasq.com> <20121025164031.GA70741@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_9A3C1F97-28A1-4218-B71B-E277637F857D
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=iso-8859-1

Hi

I have the same crash with FreeBSD 10-current

FreeBSD freebsd10 10.0-CURRENT FreeBSD 10.0-CURRENT #4 r241761: Sat Oct =
20 07:40:33 UTC 2012     =
root@kaos.glenbarber.us:/usr/obj/usr/src/sys/GENERIC  amd64

Sorry for the screenshots: panic doesn't dump the memory to the swap, I =
can't figure out why

I use udp frames (size 700) so this load is not supposed to produce ip =
fragmentation.

And again, the panic happens with 4 vcpus, no issue with 1 vcpu.

Regards,
R=E9mi






Le 25 oct. 2012 =E0 18:40, Gleb Smirnoff a =E9crit :

> On Thu, Oct 25, 2012 at 10:06:40AM +0200, R?mi Pauchet wrote:
> R> I'm testing network performance of FreeBSD using vmware esxi 5.1 =
with SR-IOV
> R>=20
> R> I'm using  FreeBSD 8.3 kernel GENERIC, 4 cpus, ixgbevf driver with =
an Intel 82599EB dual 10 Gbps network interface
> R>=20
> R> After a few seconds of udp ipv4 load (5Gbps x2, frame size 700), I =
have the following panic :
> R>=20
> R> (kgdb) bt
> R> #0  doadump () at pcpu.h:224
> R> #1  0xffffffff8060ab90 in boot (howto=3D260) at =
/usr/src/sys/kern/kern_shutdown.c:441
> R> #2  0xffffffff8060b031 in panic (fmt=3DVariable "fmt" is not =
available.
> R> ) at /usr/src/sys/kern/kern_shutdown.c:614
> R> #3  0xffffffff80900b80 in trap_fatal (frame=3D0xc, eva=3DVariable =
"eva" is not available.
> R> ) at /usr/src/sys/amd64/amd64/trap.c:825
> R> #4  0xffffffff80900ed1 in trap_pfault (frame=3D0xffffff800016a620, =
usermode=3D0) at /usr/src/sys/amd64/amd64/trap.c:741
> R> #5  0xffffffff8090138f in trap (frame=3D0xffffff800016a620) at =
/usr/src/sys/amd64/amd64/trap.c:478
> R> #6  0xffffffff808e88e4 in calltrap () at =
/usr/src/sys/amd64/amd64/exception.S:228
> R> #7  0xffffffff80667ef7 in m_copym (m=3D0x0, off0=3D1500, len=3D1480, =
wait=3D1) at /usr/src/sys/kern/uipc_mbuf.c:542
> R> #8  0xffffffff8071c8c2 in ip_fragment (ip=3D0xffffff0001a3700e, =
m_frag=3D0xffffff800016a838, mtu=3DVariable "mtu" is not available.
> R> ) at /usr/src/sys/netinet/ip_output.c:819
> R> #9  0xffffffff8071d93a in ip_output (m=3D0xffffff00019fd900, =
opt=3DVariable "opt" is not available.
> R> ) at /usr/src/sys/netinet/ip_output.c:650
> R> #10 0xffffffff8071a13a in ip_forward (m=3D0xffffff00019fd900, =
srcrt=3DVariable "srcrt" is not available.
> R> ) at /usr/src/sys/netinet/ip_input.c:1521
> R> #11 0xffffffff8071b77c in ip_input (m=3D0xffffff00019fd900) at =
/usr/src/sys/netinet/ip_input.c:729
> R> #12 0xffffffff806c652e in netisr_dispatch_src (proto=3D1, =
source=3DVariable "source" is not available.
> R> ) at /usr/src/sys/net/netisr.c:859
> R> #13 0xffffffff806bc5cd in ether_demux (ifp=3D0xffffff000168e800, =
m=3D0xffffff00019fd900) at /usr/src/sys/net/if_ethersubr.c:896
> R> #14 0xffffffff806bc9d7 in ether_input (ifp=3D0xffffff000168e800, =
m=3D0xffffff00019fd900) at /usr/src/sys/net/if_ethersubr.c:755
> R> #15 0xffffffff803ee03e in ixv_rxeof (que=3D0xffffff0001643880, =
count=3D117) at /usr/src/sys/dev/ixgbe/ixv.c:3256
> R> #16 0xffffffff803ef50b in ixv_handle_que (context=3DVariable =
"context" is not available.
>=20
> I have looked at several panics like this, and it appears that =
ip_fragment()
> is entered with incorrect byte order here. I failed to understand how =
this happens,
> and eventually had made the network stack in head to run consistently =
in network
> byte order, never modifying a forwarded packet.
>=20
> If you can run recent 10-CURRENT under same tests, I'd like to know =
the results.
>=20
> --=20
> Totus tuus, Glebius.


--Apple-Mail=_9A3C1F97-28A1-4218-B71B-E277637F857D--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AE47060F-235A-4F07-B840-06A2D7DCB75D>