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

From: Russell King - ARM Linux
Date: Wed Jan 16 2013 - 09:55:33 EST


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().
--
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/