>>>>> "Grant" == Grant Likely <[EMAIL PROTECTED]> writes:
Hi, Grant> I've now merged the driver into my tree and tested it. Grant> The good news is that using only one device node is absolutely Grant> no problem. It works without error or complaint and sysfs Grant> looks sane. Great. Grant> The bad news is that I discovered a race condition on Grant> initialization. The problem is that IRQs are enabled before Grant> the SIEs are configured. The interrupt handler is firing Grant> immediately and tries to get the status of each SIE. Since Grant> the SIE probe has not yet occured, sie->dev is NULL and we get Grant> a kernel oops when c67x00_ll_get_siemsg() tries to dereference Grant> it. Not so great. I unfortunately don't see it here. Grant> However, register_irq() cannot be easily moved to after the Grant> SIE probe because the current probe code depends on interrupts Grant> being enabled. Below is an ugly workaround that solves the Grant> problem to me, but there is probably a better solution. Wouldn't it be simpler to just add a if (sie->dev) check to _ll_get_siemsg()? Or doesn't the hcd init properly reinitialize the device? -- Bye, Peter Korsgaard - To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html