[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20130801013311.GH8540@nchen-desktop>
Date: Thu, 1 Aug 2013 09:33:12 +0800
From: Peter Chen <peter.chen@...escale.com>
To: Alexander Shishkin <alexander.shishkin@...ux.intel.com>
CC: Peter Chen <hzpeterchen@...il.com>,
Mark Brown <broonie@...nel.org>,
Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
<kernel@...gutronix.de>, Tejun Heo <htejun@...il.com>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>,
Fabio Estevam <fabio.estevam@...escale.com>,
Jeff Garzik <jeff@...zik.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
<linux-kernel@...r.kernel.org>,
Mike Turquette <mturquette@...aro.org>,
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 2/2] chipidea: Use devm_request_irq()
On Wed, Jul 31, 2013 at 10:15:12AM -0400, Tejun Heo wrote:
> hello,
>
> On Wed, Jul 31, 2013 at 09:55:26PM +0800, Peter Chen wrote:
> > I think the main point is we should allocate managed resource which is used
> > at interrupt handler before devm_request_irq, and all resources used
> > at interrupt
> > handler should be managed.
> >
> > If we use non-managed resource at interrupt handler, but using managed interrupt
> > handler, things still will go wrong if there is an odd (unexpected)
> > interrupt after
> > we finish deactivation at removal.
>
> In general, applying devm partially isn't a good idea. It's very easy
> to get into trouble thanks to release order dependency which isn't
> immediately noticeable and there have been actual bugs caused by that.
> The strategies which seem to work are either
>
> * Convert everything over to devm by wrapping deactivation in a devres
> callback too. As long as your init sequence is sane (ie. irq
> shouldn't be request before things used by irq are ready).
>
> * Allocate all resources using devres but shut down the execution
> engine in the remove_one(). Again, as all releases are controlled
> by devres, you won't have to worry about messing up the release
> sequencing.
>
thanks, Tejun. So, Alex and Fabio, this patch may not be suitable currently,
since many resources at both EHCI and device side are non-managed.
--
Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists