Re: panic in 8-CURRENT / BGE hang

From: Steve Kargl <sgk_at_troutmask.apl.washington.edu>
Date: Wed, 24 Oct 2007 09:23:16 -0700
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
_at__at_ -2454,9 +2454,9 _at__at_ 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
_at__at_ -2342,7 +2342,7 _at__at_ 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
Received on Wed Oct 24 2007 - 14:29:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:20 UTC