On Monday 22 June 2009, Marek Szyprowski wrote: > > > This is just a guess... But there's a good possibility that the oops > > was caused by recent changes to the serial layer which have not been > > propagated through to the g_serial driver. > > How recent these changes are? I did a test on another ARM-based Linux > platform with old 2.6.28 kernel and the result was exactly the same as > above... Just for the record, the reworked g_serial code merged in 2.6.27 and was mostly developed on 2.6.25 and 2.6.26 ... and it included a lot of stress testing. No such mutex_lock() in_irq() bug showed up at that time. And that was running with all practical kernel debug options, so it should have showed up if it were that easy. I do however recall turning up several regressions in how "sparse" lock checking behaved. As in, it broke when faced with common idioms like needing to temporarily drop a lock deep in a call stack. Now, the serial layer has been getting a *LONG* overdue incremental overhaul since before that started. So there's been plenty of time for incompatible changes to sneak in; I believe Alan Cox focuses on host side things, out of defensive necessity. Like, oh, changing a spinlock to a mutex. You might change the low_latency setting and review how that's now supposed to behave. - Dave -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html