Re: [PATCH] drm/tegra: hub: Use state directly

From: Stefan Schake
Date: Mon Apr 30 2018 - 07:56:58 EST


On Wed, Apr 18, 2018 at 12:40 PM, Stefan Schake <stschake@xxxxxxxxx> wrote:
> Using drm_atomic_get_private_obj_state after state has been swapped
> will return old state.
>
> Fixes: 0281c4149021 ("drm/tegra: hub: Use private object for global state")
> Signed-off-by: Stefan Schake <stschake@xxxxxxxxx>
> ---
> drivers/gpu/drm/tegra/hub.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/tegra/hub.c b/drivers/gpu/drm/tegra/hub.c
> index 9a3f23d4780f..bdd2cdd0745c 100644
> --- a/drivers/gpu/drm/tegra/hub.c
> +++ b/drivers/gpu/drm/tegra/hub.c
> @@ -683,12 +683,11 @@ void tegra_display_hub_atomic_commit(struct drm_device *drm,
> {
> struct tegra_drm *tegra = drm->dev_private;
> struct tegra_display_hub *hub = tegra->hub;
> - struct tegra_display_hub_state *hub_state;
> + struct tegra_display_hub_state *hub_state =
> + to_tegra_display_hub_state(hub->base.state);
> struct device *dev = hub->client.dev;
> int err;
>
> - hub_state = tegra_display_hub_get_state(hub, state);
> -
> if (hub_state->clk) {
> err = clk_set_rate(hub_state->clk, hub_state->rate);
> if (err < 0)
> --
> 2.14.1
>

Ping. I don't really have Tegra hardware to begin with but this is
one of the few examples of DRM private driver state so I figured
I'd send a quick fixup before anyone else tries to copy it.

Thanks,
Stefan