From: Stephen Boyd Date: Thu, 7 May 2015 00:00:54 +0000 (-0700) Subject: clk: Add some more lockdep assertions X-Git-Tag: v4.2-rc2~10^2~30^2~69 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a63347251907d7f9fc2fc02e3b9898efda573c05;p=platform%2Fkernel%2Flinux-exynos.git clk: Add some more lockdep assertions We don't check to make sure the enable_lock is held across enable/disable and we don't check if the prepare_lock is held across prepare/unprepare. Add some asserts to catch any future locking problems. Signed-off-by: Stephen Boyd --- diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 9e9d18c..659f2b0 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -543,6 +543,8 @@ EXPORT_SYMBOL_GPL(__clk_mux_determine_rate_closest); static void clk_core_unprepare(struct clk_core *core) { + lockdep_assert_held(&prepare_lock); + if (!core) return; @@ -589,6 +591,8 @@ static int clk_core_prepare(struct clk_core *core) { int ret = 0; + lockdep_assert_held(&prepare_lock); + if (!core) return 0; @@ -644,6 +648,8 @@ EXPORT_SYMBOL_GPL(clk_prepare); static void clk_core_disable(struct clk_core *core) { + lockdep_assert_held(&enable_lock); + if (!core) return; @@ -692,6 +698,8 @@ static int clk_core_enable(struct clk_core *core) { int ret = 0; + lockdep_assert_held(&enable_lock); + if (!core) return 0;