panic in 8-CURRENT / BGE hang
Steve Kargl
sgk at troutmask.apl.washington.edu
Wed Oct 24 09:29:37 PDT 2007
On Wed, Oct 24, 2007 at 11:42:55AM -0400, Jung-uk Kim wrote:
> On Wednesday 24 October 2007 02:50 am, JoaoBR wrote:
> >
> > so that is the reason then that bge hangs with 7 with the same
> > if_bge.c version as releng_6
> >
> > because hw.bge.allow_asf defaults to 0 in releng_6 and to 1 in 7
> >
> > somebody knows why this changed? Would be kind of handy if this
> > where in the man page since almost all tyans and other server
> > boards have this bge nics
>
> When I MFC'd bge(4) on RELENG_6, I decided to turn it off by default.
> See the diff between RELENG_6 and MFC point:
>
> http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/bge/if_bge.c.diff?r2=1.91.2.21;r1=1.186
>
> Since RELENG_7 is branched, I think we should do the same on the
> branch as well.
>
So, what exactly does hw.bge.allow_asf do? I've been running
-current on several different tyan boards with on-board bge
devices for the last few years without a hanging problem.
I just checked and found hw.bge.allow_asf=1.
I do see the infamous "bge0 watchdog timeout" problem, which can
be mitigatedi, but not eliminated, byx
Index: bge/if_bge.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/bge/if_bge.c,v
retrieving revision 1.198
diff -u -p -r1.198 if_bge.c
--- bge/if_bge.c 30 Sep 2007 11:05:14 -0000 1.198
+++ bge/if_bge.c 24 Oct 2007 16:26:41 -0000
@@ -2454,9 +2454,9 @@ bge_attach(device_t dev)
/* Set default tuneable values. */
sc->bge_stat_ticks = BGE_TICKS_PER_SEC;
sc->bge_rx_coal_ticks = 150;
- sc->bge_tx_coal_ticks = 150;
- sc->bge_rx_max_coal_bds = 10;
- sc->bge_tx_max_coal_bds = 10;
+ sc->bge_tx_coal_ticks = 1500000;
+ sc->bge_rx_max_coal_bds = 32;
+ sc->bge_tx_max_coal_bds = 300;
/* Set up ifnet structure */
ifp = sc->bge_ifp = if_alloc(IFT_ETHER);
Index: bge/if_bgereg.h
===================================================================
RCS file: /home/ncvs/src/sys/dev/bge/if_bgereg.h,v
retrieving revision 1.73
diff -u -p -r1.73 if_bgereg.h
--- bge/if_bgereg.h 22 May 2007 19:22:58 -0000 1.73
+++ bge/if_bgereg.h 24 Oct 2007 16:26:42 -0000
@@ -2342,7 +2342,7 @@ struct bge_gib {
* allocated for the standard, mini and jumbo receive rings.
*/
-#define BGE_SSLOTS 256
+#define BGE_SSLOTS 512
#define BGE_MSLOTS 256
#define BGE_JSLOTS 384
--
Steve
More information about the freebsd-current
mailing list