Re: [PATCH v6 04/22] mfd: omap-usb-tll: Clean up clock handling

From: Roger Quadros
Date: Wed Jan 16 2013 - 10:06:02 EST


On 01/16/2013 04:55 PM, Russell King - ARM Linux wrote:
> On Wed, Jan 16, 2013 at 04:43:35PM +0200, Roger Quadros wrote:
>> + spin_lock_irqsave(&tll->lock, flags);
>> +
>> + for (i = 0; i < tll->nch; i++) {
>> + char clkname[] = "usb_tll_hs_usb_chx_clk";
>> + struct clk *fck;
>> +
>> + snprintf(clkname, sizeof(clkname),
>> + "usb_tll_hs_usb_ch%d_clk", i);
>> + fck = clk_get(dev, clkname);
>
> NAK. Why are you doing this under a spinlock?
>
> clk_get() takes a mutex. You must not be in an atomic region (iow, you
> must not be holding a spinlock, and you must not have IRQs disabled)
> when you call clk_get().
>
Right. Good catch :).

--
cheers,
-roger.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/