patch "usb: chipidea: otg: remove mutex unlock and lock while stop and start" added to usb-linus
Subsystems (3)
This is a note to let you know that I've just added the patch titled
usb: chipidea: otg: remove mutex unlock and lock while stop and start
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree (usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the next -rc kernel release.
If you have any questions about this process, please let me know.
Quoted 1 line
From
a5a356cee89f86ff86cc3ce24136ca1f802c1bf1Mon Sep 17 00:00:00 2001
From: Li Jun <[email protected]>
Date: Sun, 12 Apr 2015 17:51:02 +0800
Subject: usb: chipidea: otg: remove mutex unlock and lock while stop and start
role
Wrongly release mutex lock during otg_statemachine may result in re-enter otg_statemachine, which is not allowed, we should do next state transtition after previous one completed.
--- drivers/usb/chipidea/otg_fsm.c | 4 ---- 1 file changed, 4 deletions(-)
drivers/usb/chipidea/otg_fsm.c +0 -4
@@ -520,7 +520,6 @@ static int ci_otg_start_host(struct otg_fsm *fsm, int on) { struct ci_hdrc *ci = container_of(fsm, struct ci_hdrc, fsm); -mutex_unlock (&fsm->lock);if (on) {ci_role_stop (ci);ci_role_start (ci,CI_ROLE_HOST );
@@ -529,7 +528,6 @@ static int ci_otg_start_host(struct otg_fsm *fsm, int on)hw_device_reset (ci);ci_role_start (ci,CI_ROLE_GADGET ); } -mutex_lock (&fsm->lock);return 0 ; }
@@ -537,12 +535,10 @@ static int ci_otg_start_gadget(struct otg_fsm *fsm, int on) { struct ci_hdrc *ci = container_of(fsm, struct ci_hdrc, fsm); -mutex_unlock (&fsm->lock);if (on)usb_gadget_vbus_connect (&ci->gadget);else usb_gadget_vbus_disconnect (&ci->gadget); -mutex_lock (&fsm->lock);return 0 ; }
Signature · 1 line
2.3.6