diff mbox

[U-Boot,RESEND] usb: gadget: pxa25x_udc: fix use-before-initialized bug

Message ID 1420739470-6988-1-git-send-email-Nable.MainInbox@googlemail.com
State Awaiting Upstream
Delegated to: Marek Vasut
Headers show

Commit Message

Nable Jan. 8, 2015, 5:51 p.m. UTC
Fix use-before-initialized bug in pxa25x_udc driver.

Function usb_gadget_register_driver calls udc_disable,
and udc_disable calls pullup_off that uses dev->mach->udc_command.
But dev->mach is initialized in usb_gadget_register_driver after
calling udc_disable. This patch fixes the order of initialization.

Signed-off-by: Alex Sadovsky <Nable.MainInbox@googlemail.com>
---
I'm resending the patch with fixed 'Signed-off-by:' and 'From:' fields.
There are no changes in patch contents.

 drivers/usb/gadget/pxa25x_udc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Marek Vasut Jan. 10, 2015, 12:42 a.m. UTC | #1
On Thursday, January 08, 2015 at 06:51:10 PM, Alex Sadovsky wrote:
> Fix use-before-initialized bug in pxa25x_udc driver.
> 
> Function usb_gadget_register_driver calls udc_disable,
> and udc_disable calls pullup_off that uses dev->mach->udc_command.
> But dev->mach is initialized in usb_gadget_register_driver after
> calling udc_disable. This patch fixes the order of initialization.
> 
> Signed-off-by: Alex Sadovsky <Nable.MainInbox@googlemail.com>

Applied, thanks!

Best regards,
Marek Vasut
diff mbox

Patch

diff --git a/drivers/usb/gadget/pxa25x_udc.c b/drivers/usb/gadget/pxa25x_udc.c
index 8945c5b..d4460b2 100644
--- a/drivers/usb/gadget/pxa25x_udc.c
+++ b/drivers/usb/gadget/pxa25x_udc.c
@@ -1950,11 +1950,11 @@  int usb_gadget_register_driver(struct usb_gadget_driver *driver)
 	dev->watchdog.period = 5000 * CONFIG_SYS_HZ / 1000000; /* 5 ms */
 	dev->watchdog.function = udc_watchdog;
 
+	dev->mach = &mach_info;
+
 	udc_disable(dev);
 	udc_reinit(dev);
 
-	dev->mach = &mach_info;
-
 	dev->gadget.name = "pxa2xx_udc";
 	retval = driver->bind(&dev->gadget);
 	if (retval) {