[Lugro-mesh] Stuck beacon
Sebastián D. Criado
lugro-mesh@lugro.org.ar
Mon, 16 Jul 2007 22:15:51 -0300
--nextPart2748057.flQ7GgYF6H
Content-Type: text/plain;
charset="iso-8859-15"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
El Lunes 16 Julio 2007 16:04, Gustavo Lindberg escribi=F3:
> http://lists.soekris.com/pipermail/soekris-tech/2005-April/008016.html
>
>
> Seba, bajate el resto del codigo Meraki y fijate que version de madwifi
> usan ellos. Tal ves tengamos que usar el mismo driver de los meraki.
Lo que pude ver en el trunk que tenemos nosotros es que hay un parche dentr=
o=20
del madwifi por el tema de los beacon llamado:
306-bstuck_calibrate.patch
para el if_ath.c
para que quede as=ED:
ath_bstuck_tasklet(TQUEUE_ARG data)
{
struct net_device *dev =3D (struct net_device *)data;
struct ath_softc *sc =3D dev->priv;
/*=20
* XXX:if the bmisscount is cleared while the =20
* tasklet execution is pending, the following
* check will be true, in which case return
* without resetting the driver.
*/
if (sc->sc_bmisscount <=3D BSTUCK_CALIBR_THR)
return;
if (sc->sc_bmisscount <=3D BSTUCK_RESET_THR) {
ATH_LOCK(sc);
ath_do_calibrate(dev);
mod_timer(&sc->sc_cal_ch, jiffies + (ath_calinterval * HZ));
ATH_UNLOCK(sc);
return;
}
printk("%s: stuck beacon; resetting (bmiss count %u)\n",
DEV_NAME(dev), sc->sc_bmisscount);
ath_reset(dev);
}
Como se puede ver, si ninguno de los 2 if da true, tira el error y resetea =
el=20
driver.
Los valores que compara se encuentran definidos en if_athvar.h de la siguie=
nte=20
manera:
#define BSTUCK_CALIBR_THR 3 /* # of stuck beacons before=20
restarting calibration */
#define BSTUCK_RESET_THR 10 /* # of stuck beacons before resett=
ing=20
NB: this is a guess*/
No me puse a seguir lo que como se setea sc_bmisscount ni por que, pero pu=
ede=20
ser una punta.
Saludos.-
=2D-=20
Sebasti=E1n D. Criado - scriado{en}ciudad.com.ar
NO A LA MATRICULACI=D3N OBLIGATORIA - http://noalamatricula.wordpress.com/a=
bout/
L.U.G.Ro - http://www.lugro.org.ar
GNU/Linux Registered User # 146768
=2D------------------------------------------------------------------
"Si el Universo fuera un programa estar=EDa hecho en C, y correr=EDa sobre
un sistema UNIX"
An=F3nimo.
--nextPart2748057.flQ7GgYF6H
Content-Type: application/pgp-signature
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQBGnBhP8hmHQ8ZCg0IRAhWHAJ47cGOv51kMRbvHCRmJEQuz6PJAXQCghRqr
Dq9cVDSAgDnxQ/dixtpOj7I=
=xgjx
-----END PGP SIGNATURE-----
--nextPart2748057.flQ7GgYF6H--