diff options
author | Haojian Zhuang <haojian.zhuang@gmail.com> | 2012-10-18 05:07:01 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2012-10-18 14:27:31 -0400 |
commit | 7ae9d71e8df27a3ab60a05ae3add08728debc09c (patch) | |
tree | 79afd74f0c1b57146cf69506b9ff6b6c56abc3f2 | |
parent | a03690e44468dcd3088f6600ab036d17bd2130ff (diff) |
pinctrl: remove mutex lock in groups show
Mutex is locked duplicatly by pinconf_groups_show() and
pin_config_group_get(). It results dead lock. So avoid to lock mutex
in pinconf_groups_show().
Cc: stable@kernel.org
Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r-- | drivers/pinctrl/pinconf.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/pinctrl/pinconf.c b/drivers/pinctrl/pinconf.c index 43f474cdc110..baee2cc46a17 100644 --- a/drivers/pinctrl/pinconf.c +++ b/drivers/pinctrl/pinconf.c | |||
@@ -537,8 +537,6 @@ static int pinconf_groups_show(struct seq_file *s, void *what) | |||
537 | seq_puts(s, "Pin config settings per pin group\n"); | 537 | seq_puts(s, "Pin config settings per pin group\n"); |
538 | seq_puts(s, "Format: group (name): configs\n"); | 538 | seq_puts(s, "Format: group (name): configs\n"); |
539 | 539 | ||
540 | mutex_lock(&pinctrl_mutex); | ||
541 | |||
542 | while (selector < ngroups) { | 540 | while (selector < ngroups) { |
543 | const char *gname = pctlops->get_group_name(pctldev, selector); | 541 | const char *gname = pctlops->get_group_name(pctldev, selector); |
544 | 542 | ||
@@ -549,8 +547,6 @@ static int pinconf_groups_show(struct seq_file *s, void *what) | |||
549 | selector++; | 547 | selector++; |
550 | } | 548 | } |
551 | 549 | ||
552 | mutex_unlock(&pinctrl_mutex); | ||
553 | |||
554 | return 0; | 550 | return 0; |
555 | } | 551 | } |
556 | 552 | ||