[Intel-gfx] [PATCH] drm: Fix drm_crtc vs. drm_plane type bug in plane->reset() handling
Daniel Vetter
daniel at ffwll.ch
Mon Aug 11 14:25:43 CEST 2014
On Mon, Aug 11, 2014 at 03:12:34PM +0300, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> s/struct drm_crtc/struct drm_plane/ in drm_mode_config_reset() so that we
> actually dereference the correct type of structure when calling the
> plane->reset() hook.
>
> Imre mentioned that his VLV was crashing there on resume. I deciced to have
> a quick look at the code and immediately spotted the problem.
>
> The problem was introduced when the plane->reset() hook was added here:
> commit 2aaa4b6f6f6be8c23de8ae60ee30e5d6059c3c64
> Author: Daniel Vetter <daniel.vetter at ffwll.ch>
> Date: Tue Jul 29 15:32:37 2014 +0200
>
> drm: Add a plane->reset hook
>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Oops, thanks for tracking this down. Squashed into the relevant commit in
topic/core-stuff.
-Daniel
> ---
> drivers/gpu/drm/drm_crtc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index 23c9c9f..f09b752 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -4664,7 +4664,7 @@ out:
> void drm_mode_config_reset(struct drm_device *dev)
> {
> struct drm_crtc *crtc;
> - struct drm_crtc *plane;
> + struct drm_plane *plane;
> struct drm_encoder *encoder;
> struct drm_connector *connector;
>
> --
> 1.8.5.5
>
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list