From: Haavard Skinnemoen Date: Fri, 16 Feb 2007 12:19:47 +0000 (+0100) Subject: [AVR32] Warn, don't BUG if clk_disable is called too many times X-Git-Tag: v2.6.21-rc1~93^2~1 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=23cebe2287474720c2eb0673581056cfb285a69f;p=linux-2.6 [AVR32] Warn, don't BUG if clk_disable is called too many times Print a helpful warning along with a stack dump if clk_disable is called on a already-disabled clock. Remove the BUG_ON(). Extracted from a patch by David Brownell. Signed-off-by: Haavard Skinnemoen --- diff --git a/arch/avr32/mach-at32ap/clock.c b/arch/avr32/mach-at32ap/clock.c index 3d0d109738..49e7b12fe7 100644 --- a/arch/avr32/mach-at32ap/clock.c +++ b/arch/avr32/mach-at32ap/clock.c @@ -63,7 +63,11 @@ EXPORT_SYMBOL(clk_enable); static void __clk_disable(struct clk *clk) { - BUG_ON(clk->users == 0); + if (clk->users == 0) { + printk(KERN_ERR "%s: mismatched disable\n", clk->name); + WARN_ON(1); + return; + } if (--clk->users == 0 && clk->mode) clk->mode(clk, 0);