Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Jul 2003 09:50:55 -0400
From:      "Robin P. Blanchard" <Robin.Blanchard@gactr.uga.edu>
To:        "John Baldwin" <jhb@FreeBSD.org>, <current@freebsd.org>
Cc:        njl@FreeBSD.org
Subject:   RE: Witness panic (fxp/polling related)
Message-ID:  <EE3D3FBAFFCAED448C21C398FDAD91AC237494@EBE1.gc.nat>

next in thread | raw e-mail | index | archive | help
Success !=20

# diff -u if_fxp.c.orig if_fxp.c                                    =20
--- if_fxp.c.orig       Sat Jul  5 11:23:44 2003
+++ if_fxp.c    Fri Jul 11 09:35:54 2003
@@ -1550,8 +1550,8 @@
        if (ether_poll_register(fxp_poll, ifp)) {
                /* disable interrupts */
                CSR_WRITE_1(sc, FXP_CSR_SCB_INTRCNTL, =
FXP_SCB_INTR_DISABLE);
-               fxp_poll(ifp, 0, 1);
                FXP_UNLOCK(sc);
+               fxp_poll(ifp, 0, 1);
                return;
        }
 #endif




> -----Original Message-----
> From: John Baldwin [mailto:jhb@FreeBSD.org]=20
> Sent: Friday, July 11, 2003 9:13 AM
> To: Robin P. Blanchard
> Cc: njl@FreeBSD.org
> Subject: Re: Witness panic (fxp/polling related)
>=20
>=20
> On Friday 11 July 2003 08:50 am, you wrote:
> > Alright...Added WITNESS_DDB to the kernel. Here's (hopefully) more=20
> > useful info. Again, this is using sources dated yesterday morning.
> >
> > recursed on non-recursive lock (sleep mutex) fxp0 @=20
> > /usr/src/sys/dev/fxp/if_fxp. c:1502
> > first acquired @ /usr/src/sys/dev/fxp/if_fxp.c:1539
>=20
> This is perfect.
>=20
>         if (ether_poll_register(fxp_poll, ifp)) {
>                 /* disable interrupts */
>                 CSR_WRITE_1(sc, FXP_CSR_SCB_INTRCNTL,=20
> FXP_SCB_INTR_DISABLE);
>                 fxp_poll(ifp, 0, 1);
>                 FXP_UNLOCK(sc);
>                 return;
>=20
> Try moving the FXP_UNLOCK() up before the call to fxp_poll()=20
> (it should be safe to do so).
>=20
> --=20
>=20
> John Baldwin <jhb@FreeBSD.org>  <>< =20
> http://www.FreeBSD.org/~jhb/ "Power Users Use > the Power to=20
> Serve!"  -  http://www.FreeBSD.org/
>=20



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EE3D3FBAFFCAED448C21C398FDAD91AC237494>