kern/118093: firewire bus reset hogs CPU,
causing data to be lost
freebsd at sopwith.solgatos.com
Mon Dec 15 21:23:49 PST 2008
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.
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...
More information about the freebsd-drivers