LOR in Jan16 -CUR, ACPI related possibly
Ketrien I. Saihr-Kenchedra
ketrien at error404.nls.net
Tue Jan 18 11:22:17 PST 2005
On Tue, 18 Jan 2005, John Baldwin wrote:
> This is because the driver (pcn) in this case is holding a lock across
> bus_release_resoruce() when it probably should not be. I get the same LOR
> with radeondrm because it holds the lock across bus_teardown_intr() (which is
> definitely wrong since that can sleep).
Indeed, this patch will fix it. I should've seen it, but I've been fighting
a timing issue in probe() on the Am79C975's.
*** if_pcn.c.orig Tue Jan 18 14:17:54 2005
--- if_pcn.c Tue Jan 18 14:18:26 2005
***************
*** 619,624 ****
--- 619,626 ----
pcn_stop(sc);
ether_ifdetach(ifp);
}
+ PCN_UNLOCK(sc);
+
if (sc->pcn_miibus)
device_delete_child(dev, sc->pcn_miibus);
bus_generic_detach(dev);
***************
*** 634,640 ****
contigfree(sc->pcn_ldata, sizeof(struct pcn_list_data),
M_DEVBUF);
}
- PCN_UNLOCK(sc);
mtx_destroy(&sc->pcn_mtx);
--- 636,641 ----
-Ketrien I. Saihr-Kenchedra
More information about the freebsd-current
mailing list