On Mon, Jun 09, 2025 at 10:45:35AM -0500, Anusha Srivatsa wrote: > On Fri, Jun 6, 2025 at 7:03 AM Maxime Ripard <mrip...@kernel.org> wrote: > > > On Wed, Jun 04, 2025 at 10:45:11PM -0500, Anusha Srivatsa wrote: > > > Put the panel reference back when driver is no > > > longer using it. > > > > > > Signed-off-by: Anusha Srivatsa <asriv...@redhat.com> > > > --- > > > drivers/gpu/drm/bridge/samsung-dsim.c | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/drivers/gpu/drm/bridge/samsung-dsim.c > > b/drivers/gpu/drm/bridge/samsung-dsim.c > > > index > > 0014c497e3fe7d8349a119dbdda30d65d816cccf..3667855ff0d6d1b608c579573de657af7fd14388 > > 100644 > > > --- a/drivers/gpu/drm/bridge/samsung-dsim.c > > > +++ b/drivers/gpu/drm/bridge/samsung-dsim.c > > > @@ -1748,6 +1748,7 @@ static int samsung_dsim_host_attach(struct > > mipi_dsi_host *host, > > > dsi->out_bridge = ERR_PTR(-EINVAL); > > > } > > > > > > + drm_panel_put(panel); > > > of_node_put(remote); > > > > > > if (IS_ERR(dsi->out_bridge)) { > > > > Explaining in your commit log why you think it's a good idea to put it > > there would be really nice. In particular, it looks super odd to me that > > you would put the panel reference in attach. > > > > Also, your patch doesn't work, and you have a reference inbalance. You > > have one taken by the panel driver, put in remove. You have one in > > drm_panel_add, put in drm_panel_remove. Which reference do you put here? > > > > This applies to your other patches too. > > Yes, I should get the ref in of_drm_find_panel() to put it here. With > that said, all callers of of_drm_find_panel() should be converted > instead of the small batch that this series addresses.
Then do the of_drm_find_panel() conversion before, because here you will free up the structure despite some callers still having a reference on it. Maxime
signature.asc
Description: PGP signature