mirror of https://github.com/torvalds/linux.git
Fix several issues in dw_dp_bind() error handling:
1. Missing return after drm_bridge_attach() failure - the function
continued execution instead of returning an error.
2. Resource leak: drm_dp_aux_register() is not a devm function, so
drm_dp_aux_unregister() must be called on all error paths after
aux registration succeeds. This affects errors from:
- drm_bridge_attach()
- phy_init()
- devm_add_action_or_reset()
- platform_get_irq()
- devm_request_threaded_irq()
3. Bug fix: platform_get_irq() returns the IRQ number or a negative
error code, but the error path was returning ERR_PTR(ret) instead
of ERR_PTR(dp->irq).
Use a goto label for cleanup to ensure consistent error handling.
Fixes:
|
||
|---|---|---|
| .. | ||
| adv7511 | ||
| analogix | ||
| cadence | ||
| imx | ||
| synopsys | ||
| Kconfig | ||
| Makefile | ||
| aux-bridge.c | ||
| aux-hpd-bridge.c | ||
| chipone-icn6211.c | ||
| chrontel-ch7033.c | ||
| cros-ec-anx7688.c | ||
| display-connector.c | ||
| fsl-ldb.c | ||
| ite-it6263.c | ||
| ite-it6505.c | ||
| ite-it66121.c | ||
| lontium-lt8912b.c | ||
| lontium-lt9211.c | ||
| lontium-lt9611.c | ||
| lontium-lt9611uxc.c | ||
| lvds-codec.c | ||
| megachips-stdpxxxx-ge-b850v3-fw.c | ||
| microchip-lvds.c | ||
| nwl-dsi.c | ||
| nwl-dsi.h | ||
| nxp-ptn3460.c | ||
| panel.c | ||
| parade-ps8622.c | ||
| parade-ps8640.c | ||
| samsung-dsim.c | ||
| sii902x.c | ||
| sii9234.c | ||
| sil-sii8620.c | ||
| sil-sii8620.h | ||
| simple-bridge.c | ||
| ssd2825.c | ||
| tc358762.c | ||
| tc358764.c | ||
| tc358767.c | ||
| tc358768.c | ||
| tc358775.c | ||
| tda998x_drv.c | ||
| thc63lvd1024.c | ||
| ti-dlpc3433.c | ||
| ti-sn65dsi83.c | ||
| ti-sn65dsi86.c | ||
| ti-tdp158.c | ||
| ti-tfp410.c | ||
| ti-tpd12s015.c | ||
| waveshare-dsi.c | ||