Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Feb 2011 11:42:36 +0100
From:      =?iso-8859-1?Q?Michael_T=FCxen?= <Michael.Tuexen@lurchi.franken.de>
To:        Lev Serebryakov <lev@serebryakov.spb.ru>
Cc:        Karim Fodil-Lemelin <fodillemlinkarim@gmail.com>, pyunyh@gmail.com, jfv@freebsd.org, freebsd-net@freebsd.org
Subject:   Re: igb driver RX (was TX) hangs when out of mbuf clusters
Message-ID:  <E3078F5D-6F44-4DFC-9203-44039E9B2549@lurchi.franken.de>
In-Reply-To: <197599906.20110208121053@serebryakov.spb.ru>
References:  <AANLkTikrjkHDaBq%2Bx6MTZhzOeqWA=xtFpqQPsthFGmuf@mail.gmail.com> <197599906.20110208121053@serebryakov.spb.ru>

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

--Apple-Mail-3-1026976568
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

On Feb 8, 2011, at 10:10 AM, Lev Serebryakov wrote:

> Hello, Karim.
> You wrote 8 =D1=84=D0=B5=D0=B2=D1=80=D0=B0=D0=BB=D1=8F 2011 =D0=B3., =
6:29:53:
>=20
>> Precisely, the exact same behavior happens (RX hang) if options
>> DEVICE_POLLING is _not_ used in the kernel configuration file. I =
tried with
>> POLLING since someone mentioned that it helped in a case mentioned =
earlier
>> today. Unfortunately for igb with or without polling yields the same =
rx ring
>> filing problem.
>  In my case (em(4), not igb(4) but symptoms are VERY similar) POLLING
> (both as kernel option AND "ifconfig em0 polling") options leads to
> resets (which drops all connections!) AFTER such kernel messages:
>=20
> em0: Watchdog timeout -- resetting
> em0: Queue(0) tdh =3D 1302, hw tdt =3D 1265
> em0: TX(0) desc avail =3D 31,Next TX to Clean =3D 1296
Can you apply the attached patch and report what
the output for rx_nxt_refresh and rx_nxt_check is?

Best regards
Michael


--Apple-Mail-3-1026976568
Content-Disposition: attachment;
	filename=patch
Content-Type: application/octet-stream;
	x-unix-mode=0644;
	name="patch"
Content-Transfer-Encoding: 7bit

Index: if_igb.c
===================================================================
--- if_igb.c	(revision 218406)
+++ if_igb.c	(working copy)
@@ -5158,6 +5158,12 @@
 		SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "rx_bytes",
 				CTLFLAG_RD, &rxr->rx_bytes,
 				"Queue Bytes Received");
+		SYSCTL_ADD_UINT(ctx, queue_list, OID_AUTO, "rx_nxt_refresh",
+				CTLFLAG_RD, &rxr->next_to_refresh, 0,
+				"Next to refresh");
+		SYSCTL_ADD_UINT(ctx, queue_list, OID_AUTO, "rx_nxt_check",
+				CTLFLAG_RD, &rxr->next_to_check, 0,
+				"Next to check");
 		SYSCTL_ADD_INT(ctx, queue_list, OID_AUTO, "lro_queued",
 				CTLFLAG_RD, &lro->lro_queued, 0,
 				"LRO Queued");
Index: if_em.c
===================================================================
--- if_em.c	(revision 218406)
+++ if_em.c	(working copy)
@@ -5137,6 +5137,12 @@
 		SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq",
 				CTLFLAG_RD, &rxr->rx_irq,
 				"Queue MSI-X Receive Interrupts");
+		SYSCTL_ADD_UINT(ctx, queue_list, OID_AUTO, "rx_nxt_refresh",
+				CTLFLAG_RD, &rxr->next_to_refresh, 0,
+				"Next to refresh");
+		SYSCTL_ADD_UINT(ctx, queue_list, OID_AUTO, "rx_nxt_check",
+				CTLFLAG_RD, &rxr->next_to_check, 0,
+				"Next to check");
 	}
 
 	/* MAC stats get their own sub node */

--Apple-Mail-3-1026976568
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=us-ascii


> 
> -- 
> // Black Lion AKA Lev Serebryakov <lev@serebryakov.spb.ru>
> 
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
> 


--Apple-Mail-3-1026976568--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E3078F5D-6F44-4DFC-9203-44039E9B2549>