On 06/29, Dmitry Torokhov wrote: > > Well, not really maintainer but I think the short term soluton (at > least for the RC part) is to alter cinergyt2_query_rc to take > cinergyt2->sem only around cinergyt2_command(). Ther rest of the > polling function need not be protected as it does nto tun concurently > with itself.
Can't comment, because I know nothing about this stuff. But, unless I misread this patch, it doesn't solve the problem. cinergyt2_release() calls flush_scheduled_work() under ->sem, but ->query_work takes it too, no? Quoting myself, > > I think cinergyt2_query() and cinergyt2_query_rc() should not use > ->disconnect_pending at all. cinergyt2_disconnect() should set > ->disconnect_pending = 1 and cancel both delayed_works. > > cinergyt2_release() checks !->disconnect_pending and does the cancel > without mutex. Possible? Oleg. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/