diff options
author | Florian Fainelli <florian@openwrt.org> | 2014-09-27 19:10:51 +0000 |
---|---|---|
committer | Florian Fainelli <florian@openwrt.org> | 2014-09-27 19:10:51 +0000 |
commit | 6918ea2484861cbf806c812b95a814ab40063c05 (patch) | |
tree | 3f4d53baabebad9339cadd1bbfaaf07ed61b9c1e /target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch | |
parent | ff6b0d57b8e4dd9c72b13ac0586c523c8d6e8841 (diff) | |
download | mtk-20170518-6918ea2484861cbf806c812b95a814ab40063c05.zip mtk-20170518-6918ea2484861cbf806c812b95a814ab40063c05.tar.gz mtk-20170518-6918ea2484861cbf806c812b95a814ab40063c05.tar.bz2 |
brcm2708: update 3.10 patches with raspberrypi/rpi-3.10.y of 27 Apr. 2014
Update the 3.10 rasperry patches by rebasing raspberry/rpi-3.10-y
against linux-stable/v3.10.49.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 42678
Diffstat (limited to 'target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch')
-rw-r--r-- | target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch b/target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch index 0891653..1eff3b1 100644 --- a/target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch +++ b/target/linux/brcm2708/patches-3.10/0049-dwc_otg-Fix-unsafe-access-of-QTD-during-URB-enqueue.patch @@ -1,7 +1,7 @@ -From 08e3e98d28e32852e43bf25fb3e64bb3f5e6af4d Mon Sep 17 00:00:00 2001 +From 1ef8aaf1ef348a22b72ba4367c5e2e5727542f59 Mon Sep 17 00:00:00 2001 From: P33M <P33M@github.com> Date: Fri, 15 Feb 2013 22:36:47 +0000 -Subject: [PATCH 049/174] dwc_otg: Fix unsafe access of QTD during URB enqueue +Subject: [PATCH 049/196] dwc_otg: Fix unsafe access of QTD during URB enqueue In dwc_otg_hcd_urb_enqueue during qtd creation, it was possible that the transaction could complete almost immediately after the qtd was assigned @@ -17,9 +17,11 @@ that had no periodic endpoints (e.g. USB pendrive or some wlan devices). drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c | 2 +- 2 files changed, 13 insertions(+), 12 deletions(-) +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c +index d5c94f4..e653d84 100644 --- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c +++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c -@@ -462,6 +462,8 @@ int dwc_otg_hcd_urb_enqueue(dwc_otg_hcd_ +@@ -462,6 +462,8 @@ int dwc_otg_hcd_urb_enqueue(dwc_otg_hcd_t * hcd, { dwc_irqflags_t flags; int retval = 0; @@ -28,7 +30,7 @@ that had no periodic endpoints (e.g. USB pendrive or some wlan devices). dwc_otg_qtd_t *qtd; gintmsk_data_t intr_mask = {.d32 = 0 }; -@@ -493,22 +495,22 @@ int dwc_otg_hcd_urb_enqueue(dwc_otg_hcd_ +@@ -493,22 +495,22 @@ int dwc_otg_hcd_urb_enqueue(dwc_otg_hcd_t * hcd, return -DWC_E_NO_MEMORY; } #endif @@ -61,7 +63,7 @@ that had no periodic endpoints (e.g. USB pendrive or some wlan devices). DWC_SPINLOCK_IRQSAVE(hcd->lock, &flags); tr_type = dwc_otg_hcd_select_transactions(hcd); if (tr_type != DWC_OTG_TRANSACTION_NONE) { -@@ -516,7 +518,6 @@ int dwc_otg_hcd_urb_enqueue(dwc_otg_hcd_ +@@ -516,7 +518,6 @@ int dwc_otg_hcd_urb_enqueue(dwc_otg_hcd_t * hcd, } DWC_SPINUNLOCK_IRQRESTORE(hcd->lock, flags); } @@ -69,9 +71,11 @@ that had no periodic endpoints (e.g. USB pendrive or some wlan devices). return retval; } +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c +index b337e1b..b3e6e52 100644 --- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c +++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c -@@ -937,7 +937,7 @@ int dwc_otg_hcd_qtd_add(dwc_otg_qtd_t * +@@ -937,7 +937,7 @@ int dwc_otg_hcd_qtd_add(dwc_otg_qtd_t * qtd, if (*qh == NULL) { *qh = dwc_otg_hcd_qh_create(hcd, urb, atomic_alloc); if (*qh == NULL) { @@ -80,3 +84,6 @@ that had no periodic endpoints (e.g. USB pendrive or some wlan devices). goto done; } } +-- +1.9.1 + |