diff options
author | Dong Aisheng <aisheng.dong@freescale.com> | 2015-04-15 22:26:36 +0800 |
---|---|---|
committer | Stephen Boyd <sboyd@codeaurora.org> | 2015-05-06 16:58:53 -0700 |
commit | d2a5d46b167a9a8231264daf80165b739aecf1d7 (patch) | |
tree | aacc2fe63fde97d4263fbb9a2487a6dbc3fc01e3 /drivers/edac | |
parent | 5d45ed8f5bfaeaf50576b8d663796ee905ccf2a0 (diff) | |
download | blackbird-op-linux-d2a5d46b167a9a8231264daf80165b739aecf1d7.tar.gz blackbird-op-linux-d2a5d46b167a9a8231264daf80165b739aecf1d7.zip |
clk: add missing lock when call clk_core_enable in clk_set_parent
Before commit 035a61c314eb ("clk: Make clk API return per-user
struct clk instances") we acquired the enable_lock in
__clk_set_parent_{before,after}() by means of calling
clk_enable(). After commit 035a61c314eb we use clk_core_enable()
in place of the clk_enable(), and clk_core_enable() doesn't
acquire the enable_lock. This opens up a race condition between
clk_set_parent() and clk_enable(). Fix it.
Fixes: 035a61c314eb ("clk: Make clk API return per-user struct clk instances")
Cc: Mike Turquette <mturquette@linaro.org>
Cc: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Dong Aisheng <aisheng.dong@freescale.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'drivers/edac')
0 files changed, 0 insertions, 0 deletions