kern/118093: firewire bus reset hogs CPU, causing data to be lost

Warner Losh imp at bsdimp.com
Mon Dec 15 22:10:04 PST 2008


The following reply was made to PR kern/118093; it has been noted by GNATS.

From: Warner Losh <imp at bsdimp.com>
To: freebsd at sopwith.solgatos.com
Cc: freebsd-firewire at FreeBSD.org, freebsd-drivers at FreeBSD.org,
        bug-followup at FreeBSD.org
Subject: Re: kern/118093: firewire bus reset hogs CPU, causing data to be
 lost 
Date: Mon, 15 Dec 2008 23:01:30 -0700 (MST)

 > I found the source of this problem.  When a firewire bus resets,
 > the firewire driver prints a few lines to the console,
 > using printf(9) and device_printf(9).  I suspect that these are
 > running at splfw aka splimp, locking out other i/o.
 
 This can't be the case.  There's no SPL involved at all.  Maybe
 removing the printfs causes an interrupt to be serviced faster,
 resulting in what appears to be better performance...
 
 > Commenting out the *printf() calls fixes the problem, but that
 > isn't a good solution.
 > 
 > Would changing the *printf() calls to log(9) calls be safe?
 > ("safe" meaning other i/o doesn't get locked out)
 > 
 > Ah, for the good old days when 19200 baud seemed fast...
 > _______________________________________________
 > freebsd-drivers at freebsd.org mailing list
 > http://lists.freebsd.org/mailman/listinfo/freebsd-drivers
 > To unsubscribe, send any mail to "freebsd-drivers-unsubscribe at freebsd.org"
 > 
 > 


More information about the freebsd-bugs mailing list