[PATCH] radeon kms: fix uninitialised hotplug work usage in r100_irq_process()

Meelis Roos mroos at linux.ee
Thu Aug 29 03:55:21 PDT 2013


> Reported-by: Meelis Roos <mroos at linux.ee>
> Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky at gmail.com>

It works, thank you for quick response!

Tested-by: Meelis Roos <mroos at linux.ee>

>  drivers/gpu/drm/radeon/radeon_irq_kms.c | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/radeon/radeon_irq_kms.c b/drivers/gpu/drm/radeon/radeon_irq_kms.c
> index 081886b..cc9e848 100644
> --- a/drivers/gpu/drm/radeon/radeon_irq_kms.c
> +++ b/drivers/gpu/drm/radeon/radeon_irq_kms.c
> @@ -275,17 +275,19 @@ int radeon_irq_kms_init(struct radeon_device *rdev)
>  			dev_info(rdev->dev, "radeon: using MSI.\n");
>  		}
>  	}
> +
> +	INIT_WORK(&rdev->hotplug_work, radeon_hotplug_work_func);
> +	INIT_WORK(&rdev->audio_work, r600_audio_update_hdmi);
> +	INIT_WORK(&rdev->reset_work, radeon_irq_reset_work_func);
> +
>  	rdev->irq.installed = true;
>  	r = drm_irq_install(rdev->ddev);
>  	if (r) {
>  		rdev->irq.installed = false;
> +		flush_work(&rdev->hotplug_work);
>  		return r;
>  	}
>  
> -	INIT_WORK(&rdev->hotplug_work, radeon_hotplug_work_func);
> -	INIT_WORK(&rdev->audio_work, r600_audio_update_hdmi);
> -	INIT_WORK(&rdev->reset_work, radeon_irq_reset_work_func);
> -
>  	DRM_INFO("radeon: irq initialized.\n");
>  	return 0;
>  }
> 

-- 
Meelis Roos (mroos at linux.ee)


More information about the dri-devel mailing list