Message ID | 20180405151400.11326-13-ville.syrjala@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Apr 05, 2018 at 06:14:00PM +0300, Ville Syrjala wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Clean up the ugly tmp->primary-> stuff in > __drm_mode_set_config_internal() with a local plane variable. > > Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > Suggested-by: Daniel Vetter <daniel.vetter@ffwll.ch> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> I think this can go in before the previous patch. Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/drm_crtc.c | 19 ++++++++++++------- > 1 file changed, 12 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c > index 4e3c1a8d118a..34c08dc92849 100644 > --- a/drivers/gpu/drm/drm_crtc.c > +++ b/drivers/gpu/drm/drm_crtc.c > @@ -467,8 +467,11 @@ static int __drm_mode_set_config_internal(struct drm_mode_set *set, > * connectors from it), hence we need to refcount the fbs across all > * crtcs. Atomic modeset will have saner semantics ... > */ > - drm_for_each_crtc(tmp, crtc->dev) > - tmp->primary->old_fb = tmp->primary->fb; > + drm_for_each_crtc(tmp, crtc->dev) { > + struct drm_plane *plane = tmp->primary; > + > + plane->old_fb = plane->fb; > + } > > fb = set->fb; > > @@ -483,11 +486,13 @@ static int __drm_mode_set_config_internal(struct drm_mode_set *set, > } > > drm_for_each_crtc(tmp, crtc->dev) { > - if (tmp->primary->fb) > - drm_framebuffer_get(tmp->primary->fb); > - if (tmp->primary->old_fb) > - drm_framebuffer_put(tmp->primary->old_fb); > - tmp->primary->old_fb = NULL; > + struct drm_plane *plane = tmp->primary; > + > + if (plane->fb) > + drm_framebuffer_get(plane->fb); > + if (plane->old_fb) > + drm_framebuffer_put(plane->old_fb); > + plane->old_fb = NULL; > } > > return ret; > -- > 2.16.1 >
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 4e3c1a8d118a..34c08dc92849 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -467,8 +467,11 @@ static int __drm_mode_set_config_internal(struct drm_mode_set *set, * connectors from it), hence we need to refcount the fbs across all * crtcs. Atomic modeset will have saner semantics ... */ - drm_for_each_crtc(tmp, crtc->dev) - tmp->primary->old_fb = tmp->primary->fb; + drm_for_each_crtc(tmp, crtc->dev) { + struct drm_plane *plane = tmp->primary; + + plane->old_fb = plane->fb; + } fb = set->fb; @@ -483,11 +486,13 @@ static int __drm_mode_set_config_internal(struct drm_mode_set *set, } drm_for_each_crtc(tmp, crtc->dev) { - if (tmp->primary->fb) - drm_framebuffer_get(tmp->primary->fb); - if (tmp->primary->old_fb) - drm_framebuffer_put(tmp->primary->old_fb); - tmp->primary->old_fb = NULL; + struct drm_plane *plane = tmp->primary; + + if (plane->fb) + drm_framebuffer_get(plane->fb); + if (plane->old_fb) + drm_framebuffer_put(plane->old_fb); + plane->old_fb = NULL; } return ret;