uplcom(4) update from FreeBSD

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Tue Nov 7 14:37:32 PST 2006


Hi,
On Tue, Nov 07, 2006 at 10:01:17PM +0000, Johannes Hofmann wrote:
> Johannes Hofmann <Johannes.Hofmann at xxxxxx> wrote:
> > Hi Sascha, me objects :-) 
> > I just got two crashes while accessing the updated driver... 
> > Unfortunately no dumps though. I will try to fix this.
> 
> Ok, I finally got a core dump. The dump device was too small after
> a memory upgrade...
> 
> Here is what I got:
> 
> (kgdb) bt
> #0  dumpsys () at thread.h:83
> #1  0xc028d3c3 in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:355
> #2  0xc028da56 in panic (
>     fmt=0xc06cb0e8 "uhci_abort_xfer: not in process context")
>     at /usr/src/sys/kern/kern_shutdown.c:757
> #3  0xc06b802b in uhci_abort_xfer (xfer=0xc330c920, status=USBD_CANCELLED)
			:
> (kgdb) 
> 
> This after some ^C and cable pulling while using /dev/ucom0.

Apparently uplcom.c in FreeBSD now uses taskqueue to avoid this situation.
I'm not sure we can do it the same way, though.

  revision 1.27
  date: 2005-01-31 22:58:10 +0900;  author: akiyama;  state: Exp;  lines: +18 -0;
  Use a taskqueue to handle port status changes.
  Calling ucom layer directly from interrupt context make a panic.

  MFC after:      1 week

Cheers.





More information about the Submit mailing list