Hi Ville, On Fri, Jan 22, 2021 at 02:07:22PM +0200, Ville Syrjälä wrote: > On Thu, Jan 21, 2021 at 05:35:31PM +0100, Maxime Ripard wrote: > > Many drivers reference the plane->state pointer in order to get the > > current plane state in their atomic_check hook, which would be the old > > plane state in the global atomic state since _swap_state hasn't happened > > when atomic_check is run. > > > > Use the drm_atomic_get_old_plane_state helper to get that state to make > > it more obvious. > > > > This was made using the coccinelle script below: > > > > @ plane_atomic_func @ > > identifier helpers; > > identifier func; > > @@ > > > > static struct drm_plane_helper_funcs helpers = { > > ..., > > .atomic_check = func, > > ..., > > }; > > > > @ replaces_old_state @ > > identifier plane_atomic_func.func; > > identifier plane, state, plane_state; > > @@ > > > > func(struct drm_plane *plane, struct drm_atomic_state *state) { > > ... > > - struct drm_plane_state *plane_state = plane->state; > > + struct drm_plane_state *plane_state = drm_atomic_get_old_plane_state(state, plane); > > ... > > } > > > > @@ > > identifier plane_atomic_func.func; > > identifier plane, state, plane_state; > > @@ > > > > func(struct drm_plane *plane, struct drm_atomic_state *state) { > > struct drm_plane_state *plane_state = drm_atomic_get_old_plane_state(state, plane); > > ... > > - plane->state > > + plane_state > > ... > > We don't need the <... ...> style here? It's been a while since > I did any serious cocci so I'm getting a bit rusty on the details... You're right, I've changed it and caught some more users (ingenic). I'll update it. > Otherwise looks great > Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Thanks! Maxime
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel