Re: [PATCH v7 3/6] drm/bridge: cadence: cdns-mhdp8546-core: Set the mhdp connector earlier in atomic_enable()
From: Dmitry Baryshkov
Date: Fri Oct 10 2025 - 08:32:49 EST
On Fri, Oct 10, 2025 at 02:48:10PM +0530, Harikrishna shenoy wrote:
>
>
> On 06/10/25 04:42, Dmitry Baryshkov wrote:
> > On Mon, Sep 29, 2025 at 02:09:33PM +0530, Harikrishna Shenoy wrote:
> > > From: Jayesh Choudhary <j-choudhary@xxxxxx>
> > >
> > > In case if we get errors in cdns_mhdp_link_up() or cdns_mhdp_reg_read()
> > > in atomic_enable, we will go to cdns_mhdp_modeset_retry_fn() and will hit
> > > NULL pointer while trying to access the mutex. We need the connector to
> > > be set before that. Unlike in legacy !(DBANC) cases, we do not have
> > > connector initialised in bridge_attach(). Now that we have the connector
> > > pointer in mhdp bridge structure, so set the mhdp->connector in
> > > atomic_enable() earlier to avoid possible NULL pointer dereference
> > > in recovery paths like modeset_retry_fn() with the DBANC flag set.
> > >
> > > Fixes: c932ced6b585 ("drm/tidss: Update encoder/bridge chain connect model")
> >
> > This Fixes tag means that this patch can be attempted to be backported
> > back to v6.5 (even w/o cc:stable, etc). I know that it is a pain, but
> > please move all Fixes to the top of the series. Yes, you want to drop
> > non-DBANC case first and then fix everything. It doesn't look like it is
> > a correct approach for the sake of maintaing the -stable branches.
> >
> Hi Dmitry,
>
> The patch which drops non-DBANC case can be moved after fixes, but for
> making fixes i need the pointer structure so adding fixes tag to PATCH 2/6
> "drm/bridge: cadence: cdns-mhdp8546*: Change
> drm_connector from structure to pointer"
> Let me know your thoughts on this, will re-spin accordingly.
You still can have a pointer to drm_connector. Just make sure that it
points to the internally-created one if the driver did create it and to
the external one if DBANC flag has been passed.
The easiest way to ensure correctness is by reordering patches: move the
fixes to the top of the series and make sure that they are correct
first. Then drop the old code dropping drm_connector creation.
>
> Regards.
>
> > > Signed-off-by: Jayesh Choudhary <j-choudhary@xxxxxx>
> > > Signed-off-by: Harikrishna Shenoy <h-shenoy@xxxxxx>
> > > ---
> > > .../drm/bridge/cadence/cdns-mhdp8546-core.c | 20 +++++++++----------
> > > 1 file changed, 10 insertions(+), 10 deletions(-)
> > >
> >
--
With best wishes
Dmitry