linux-stable/drivers/usb/dwc3
Douglas Anderson 6a97cee39d Revert "usb: dwc3: dwc3-qcom: Enable tx-fifo-resize property by default"
This reverts commit cefdd52fa0.

On sc7180-trogdor class devices with 'fw_devlink=permissive' and KASAN
enabled, you'll see a Use-After-Free reported at bootup.

The root of the problem is that dwc3_qcom_of_register_core() is adding
a devm-allocated "tx-fifo-resize" property to its device tree node
using of_add_property().

The issue is that of_add_property() makes a _permanent_ addition to
the device tree that lasts until reboot. That means allocating memory
for the property using "devm" managed memory is a terrible idea since
that memory will be freed upon probe deferral or device unbinding.

Let's revert the patch since the system is still functional without
it. The fact that of_add_property() makes a permanent change is extra
fodder for those folks who were aruging that the device tree isn't
really the right way to pass information between parts of the
driver. It is an exercise left to the reader to submit a patch
re-adding the new feature in a way that makes everyone happier.

Fixes: cefdd52fa0 ("usb: dwc3: dwc3-qcom: Enable tx-fifo-resize property by default")
Cc: stable <stable@vger.kernel.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20211207094327.1.Ie3cde3443039342e2963262a4c3ac36dc2c08b30@changeid
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-12-09 20:03:09 +01:00
..
Kconfig usb: exynos: describe driver in KConfig 2021-10-05 12:55:50 +02:00
Makefile usb: dwc3: Add driver for Xilinx platforms 2021-03-23 12:48:14 +01:00
core.c usb: dwc3: leave default DMA for PCI devices 2021-11-17 15:03:51 +01:00
core.h usb: dwc3: core: Revise GHWPARAMS9 offset 2021-11-17 15:01:35 +01:00
debug.h usb: dwc3: debugfs: Add and remove endpoint dirs dynamically 2021-06-03 20:28:23 +02:00
debugfs.c USB: dwc3: remove debugfs root dentry storage 2021-06-10 19:57:21 +02:00
drd.c usb: dwc3: drd: use helper to get role-switch-default-mode 2021-07-27 15:58:37 +02:00
dwc3-exynos.c usb: dwc3: exynos: fix incorrect kernel-doc comment syntax 2021-04-02 15:20:54 +02:00
dwc3-haps.c usb: dwc3: haps: Constify the software node 2021-02-04 15:42:06 +01:00
dwc3-imx8mp.c usb: dwc3: imx8mp: request irq after initializing dwc3 2021-08-26 13:10:56 +02:00
dwc3-keystone.c usb: dwc3: fix incorrect kernel-doc comment syntax in files 2021-04-02 15:20:51 +02:00
dwc3-meson-g12a.c usb: dwc3: meson-g12a: add IRQ check 2021-08-13 09:02:31 +02:00
dwc3-of-simple.c usb: dwc3: Add driver for Xilinx platforms 2021-03-23 12:48:14 +01:00
dwc3-omap.c usb: dwc3: omap: improve extcon initialization 2021-05-10 15:04:37 +02:00
dwc3-pci.c usb: dwc3: pci: add support for AMD's newer generation platform. 2021-08-26 13:14:21 +02:00
dwc3-qcom.c Revert "usb: dwc3: dwc3-qcom: Enable tx-fifo-resize property by default" 2021-12-09 20:03:09 +01:00
dwc3-st.c usb: dwc3: st: fix incorrect kernel-doc comment syntax in file 2021-04-02 15:20:46 +02:00
dwc3-xilinx.c usb: dwc3: xilinx: Remove the extra freeing of clocks 2021-04-09 16:05:32 +02:00
ep0.c Merge v5.14-rc3 into usb-next 2021-07-26 11:16:46 +02:00
gadget.c usb: dwc3: gadget: Fix null pointer exception 2021-11-17 15:02:52 +01:00
gadget.h usb: dwc3: add cancelled reasons for dwc3 requests 2021-04-02 15:27:36 +02:00
host.c usb: dwc3: host: Use software node API with the properties 2021-02-05 10:08:19 +01:00
io.h usb: dwc3: fix incorrect kernel-doc comment syntax in files 2021-04-02 15:20:51 +02:00
trace.c usb: dwc3: fix incorrect kernel-doc comment syntax in files 2021-04-02 15:20:51 +02:00
trace.h usb: dwc3: trace: Remove unused fields in dwc3_log_trb 2021-05-27 09:30:01 +02:00
ulpi.c usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression 2020-12-28 15:55:44 +01:00