[PATCH 0/6] soc: qcom: pmic_glink_altmode: fix drm bridge use-after-free

Neil Armstrong neil.armstrong at linaro.org
Fri Feb 23 14:54:05 UTC 2024


On 17/02/2024 16:02, Johan Hovold wrote:
> Starting with 6.8-rc1 the internal display sometimes fails to come up on
> machines like the Lenovo ThinkPad X13s and the logs indicate that this
> is due to a regression in the DRM subsystem [1].
> 
> This series fixes a race in the pmic_glink_altmode driver which was
> exposed / triggered by the transparent DRM bridges rework that went into
> 6.8-rc1 and that manifested itself as a bridge failing to attach and
> sometimes triggering a NULL-pointer dereference.
> 
> The intermittent hard resets that have also been reported since 6.8-rc1
> unfortunately still remains and suggests that we are dealing with two
> separate regressions. There is some indication that also the hard resets
> (e.g. due to register accesses to unclocked hardware) are also due to
> changes in the DRM subsystem as it happens around the time that the eDP
> panel and display controller would be initialised during boot (the
> runtime PM rework?). This remains to be verified, however.
> 
> Included is also a fix for a related OF node reference leak in the
> aux-hpd driver found through inspection when reworking the driver.
> 
> The use-after-free bug is triggered by a probe deferral and highlighted
> some further bugs in the involved drivers, which were registering child
> devices before deferring probe. This behaviour is not correct and can
> both trigger probe deferral loops and potentially also further issues
> with the DRM bridge implementation.
> 
> This series can either go through the Qualcomm SoC tree (pmic_glink) or
> the DRM tree. The PHY patches do not depend on the rest of the series
> and could possibly be merged separately through the PHY tree.
> 
> Whichever gets this to mainline the fastest.
> 
> Johan
> 
> 
> [1] https://lore.kernel.org/lkml/ZctVmLK4zTwcpW3A@hovoldconsulting.com/
> 
> 
> Johan Hovold (5):
>    drm/bridge: aux-hpd: fix OF node leaks
>    drm/bridge: aux-hpd: separate allocation and registration
>    soc: qcom: pmic_glink_altmode: fix drm bridge use-after-free
>    phy: qcom-qmp-combo: fix drm bridge registration
>    phy: qcom-qmp-combo: fix type-c switch registration
> 
> Rob Clark (1):
>    soc: qcom: pmic_glink: Fix boot when QRTR=m
> 
>   drivers/gpu/drm/bridge/aux-hpd-bridge.c   | 70 ++++++++++++++++++-----
>   drivers/phy/qualcomm/phy-qcom-qmp-combo.c | 16 +++---
>   drivers/soc/qcom/pmic_glink.c             | 21 +++----
>   drivers/soc/qcom/pmic_glink_altmode.c     | 16 +++++-
>   include/drm/bridge/aux-bridge.h           | 15 +++++
>   5 files changed, 102 insertions(+), 36 deletions(-)
> 

For the serie:
Acked-by: Neil Armstrong <neil.armstrong at linaro.org>

After an offline discussion, Dmitry, it's ok to push the remaining patches to drm-misc-fixes.

Thanks,
Neil


More information about the dri-devel mailing list