Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933882AbXF2RWw (ORCPT ); Fri, 29 Jun 2007 13:22:52 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1759361AbXF2RWp (ORCPT ); Fri, 29 Jun 2007 13:22:45 -0400 Received: from mail.screens.ru ([213.234.233.54]:48428 "EHLO mail.screens.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756248AbXF2RWo (ORCPT ); Fri, 29 Jun 2007 13:22:44 -0400 Date: Fri, 29 Jun 2007 21:23:32 +0400 From: Oleg Nesterov To: Dmitry Torokhov Cc: Ingo Molnar , Thomas Sattler , Linux Kernel Mailing List , Alan Cox , Daniel Mack , Holger Waechtler , Mauro Carvalho Chehab , Mariusz Kozlowski , v4l-dvb-maintainer@linuxtv.org Subject: Re: 2.6.22-rc6 spurious hangs Message-ID: <20070629172332.GA480@tv-sign.ru> References: <20070628150826.GA487@tv-sign.ru> <4683F145.2060705@gmx.de> <4683F48F.9010603@gmx.de> <20070628181044.GA613@tv-sign.ru> <4684B132.2070405@gmx.de> <20070629130955.GA284@tv-sign.ru> <20070629131605.GA25964@elte.hu> <20070629135848.GA332@tv-sign.ru> <20070629141059.GA8995@elte.hu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.11 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1109 Lines: 32 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 majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/