> As serial_open() takes the lock, resume() must not do so. > If however, remote wakeup is used a lock must be taken > to look at port->count reliably. As this is impossible, the patch > implementing use of remote wakeup for the option driver > implements a private flag for opened ports. I need to look at the actual diff, but the combination looks completely bogus unless I'm misreading the fixup which is possible. The way the core serial code and most other drivers do this is to keep track of the port ASYNC_INITIALIZED flag, which indicates (in the non USB cases but trivially fixable for the USB cases) that the port hardware is initialized. We now set it on an open but we don't clear it on serial_do_down() finishing. -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html