diff options
author | Mathias Kresin <dev@kresin.me> | 2016-12-29 21:47:54 +0100 |
---|---|---|
committer | Mathias Kresin <dev@kresin.me> | 2017-01-02 19:16:54 +0100 |
commit | b35a41c139ec995e1d3096ce962f020053f3056e (patch) | |
tree | 6dd920956c2e873fcde84c4538528d15ce54ed8d /target/linux/generic | |
parent | b28e94d4bfa1f81219765fc395e63ca81badd8df (diff) | |
download | mtk-20170518-b35a41c139ec995e1d3096ce962f020053f3056e.zip mtk-20170518-b35a41c139ec995e1d3096ce962f020053f3056e.tar.gz mtk-20170518-b35a41c139ec995e1d3096ce962f020053f3056e.tar.bz2 |
generic: backport dwc2 kernel panic fix
In case the soft reset in dwc2_core_reset() timeouts, the
hsotg->core_params are freed albeit it is owned by the core. This
results into a kernel panic as shown in FS#351.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Diffstat (limited to 'target/linux/generic')
-rw-r--r-- | target/linux/generic/patches-4.4/098-usb-dwc2-Remove-unnecessary-kfree.patch | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/target/linux/generic/patches-4.4/098-usb-dwc2-Remove-unnecessary-kfree.patch b/target/linux/generic/patches-4.4/098-usb-dwc2-Remove-unnecessary-kfree.patch new file mode 100644 index 0000000..3a27fea --- /dev/null +++ b/target/linux/generic/patches-4.4/098-usb-dwc2-Remove-unnecessary-kfree.patch @@ -0,0 +1,24 @@ +From cd4b1e34655d46950c065d9284b596cd8d7b28cd Mon Sep 17 00:00:00 2001 +From: John Youn <johnyoun@synopsys.com> +Date: Thu, 3 Nov 2016 17:55:45 -0700 +Subject: [PATCH] usb: dwc2: Remove unnecessary kfree + +This shouldn't be freed by the HCD as it is owned by the core and +allocated with devm_kzalloc. + +Signed-off-by: John Youn <johnyoun@synopsys.com> +Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com> +--- + drivers/usb/dwc2/hcd.c | 1 - + 1 file changed, 1 deletion(-) + +--- a/drivers/usb/dwc2/hcd.c ++++ b/drivers/usb/dwc2/hcd.c +@@ -3160,7 +3160,6 @@ error3: + error2: + usb_put_hcd(hcd); + error1: +- kfree(hsotg->core_params); + + #ifdef CONFIG_USB_DWC2_TRACK_MISSED_SOFS + kfree(hsotg->last_frame_num_array); |