Message ID | 20250604-of_drm_find_panel_part1-v1-1-c632e12e131d@redhat.com |
---|---|
State | New |
Headers | show |
Series | Integrate refcounting across of_drm_find_panel() callers | expand |
diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c index fee65dc65979d6c03753967cefa6d5c4e597277d..ffa3428b5f52c599b53b1fdc0d0a9181a47c91d4 100644 --- a/drivers/gpu/drm/drm_panel.c +++ b/drivers/gpu/drm/drm_panel.c @@ -80,6 +80,7 @@ EXPORT_SYMBOL(drm_panel_init); */ void drm_panel_add(struct drm_panel *panel) { + drm_panel_get(panel); mutex_lock(&panel_lock); list_add_tail(&panel->list, &panel_list); mutex_unlock(&panel_lock); @@ -97,6 +98,7 @@ void drm_panel_remove(struct drm_panel *panel) mutex_lock(&panel_lock); list_del_init(&panel->list); mutex_unlock(&panel_lock); + drm_panel_put(panel); } EXPORT_SYMBOL(drm_panel_remove);
Take the panel reference and put it back as required. drm_panel_add() and drm_panel_remove() add a panel to the global registry and removes a panel respectively. Use get() and put() helpers to keep up with refcounting. Signed-off-by: Anusha Srivatsa <asrivats@redhat.com> --- drivers/gpu/drm/drm_panel.c | 2 ++ 1 file changed, 2 insertions(+)