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

Dieter freebsd at sopwith.solgatos.com
Mon Dec 15 21:10:10 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-firewire mailing list