summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMichael Thalmeier <michael.thalmeier@hale.at>2017-05-18 16:14:14 +0200
committerPeter Chen <peter.chen@nxp.com>2017-05-23 02:36:46 +0200
commit0340ff83cd4475261e7474033a381bc125b45244 (patch)
tree6c0d26616cc466fabceb134e43ebad58060be699 /drivers
parentusb: chipidea: udc: fix NULL pointer dereference if udc_start failed (diff)
downloadlinux-0340ff83cd4475261e7474033a381bc125b45244.tar.xz
linux-0340ff83cd4475261e7474033a381bc125b45244.zip
usb: chipidea: debug: check before accessing ci_role
ci_role BUGs when the role is >= CI_ROLE_END. Cc: stable@vger.kernel.org #v3.10+ Signed-off-by: Michael Thalmeier <michael.thalmeier@hale.at> Signed-off-by: Peter Chen <peter.chen@nxp.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/usb/chipidea/debug.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/chipidea/debug.c b/drivers/usb/chipidea/debug.c
index 6d23eede4d8c..1c31e8a08810 100644
--- a/drivers/usb/chipidea/debug.c
+++ b/drivers/usb/chipidea/debug.c
@@ -294,7 +294,8 @@ static int ci_role_show(struct seq_file *s, void *data)
{
struct ci_hdrc *ci = s->private;
- seq_printf(s, "%s\n", ci_role(ci)->name);
+ if (ci->role != CI_ROLE_END)
+ seq_printf(s, "%s\n", ci_role(ci)->name);
return 0;
}