[PATCH] drm/mgag200: Don't do full cleanup if mgag200_device_init fails

Christopher Harvey charvey at matrox.com
Wed Jun 12 10:16:40 PDT 2013


On Wed, Jun 05 2013, Christopher Harvey <charvey at matrox.com> wrote:
> Running mgag200_driver_unload when the driver init fails early on
> causes functions like drm_mode_config_cleanup to be called. The
> problem is, drm_mode_config_cleanup crashes because the corresponding
> init hasn't happend yet. There really isn't anything to cleanup after
> mgag200_device_init, so we can just pass the error code upwards.
>
> Acked-by: Julia Lemire <jlemire at matrox.com>
> Signed-off-by: Christopher Harvey <charvey at matrox.com>
> ---
>  drivers/gpu/drm/mgag200/mgag200_main.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/mgag200/mgag200_main.c b/drivers/gpu/drm/mgag200/mgag200_main.c
> index 5189675..6d6b598 100644
> --- a/drivers/gpu/drm/mgag200/mgag200_main.c
> +++ b/drivers/gpu/drm/mgag200/mgag200_main.c
> @@ -209,7 +209,7 @@ int mgag200_driver_load(struct drm_device *dev, unsigned long flags)
>  	r = mgag200_device_init(dev, flags);
>  	if (r) {
>  		dev_err(&dev->pdev->dev, "Fatal error during GPU init: %d\n", r);
> -		goto out;
> +		return r;
>  	}
>  	r = mgag200_mm_init(mdev);
>  	if (r)

ping.


More information about the dri-devel mailing list