All of lore.kernel.org
 help / color / mirror / Atom feed
* [mesa PATCH] nouveau: handle early initialization errors
@ 2010-08-23 20:40 Marcin Slusarz
       [not found] ` <20100823204058.GA8160-OI9uyE9O0yo@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: Marcin Slusarz @ 2010-08-23 20:40 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

handle very early errors in pipe_screen creation (failure of
nouveau_screen_init in nv50_screen_create)
---
 src/gallium/drivers/nouveau/nouveau_screen.c       |    3 ++-
 .../winsys/nouveau/drm/nouveau_drm_winsys.c        |    3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/nouveau/nouveau_screen.c b/src/gallium/drivers/nouveau/nouveau_screen.c
index 513e5e0..ebb21a6 100644
--- a/src/gallium/drivers/nouveau/nouveau_screen.c
+++ b/src/gallium/drivers/nouveau/nouveau_screen.c
@@ -258,6 +258,7 @@ nouveau_screen_fini(struct nouveau_screen *screen)
 {
 	struct pipe_winsys *ws = screen->base.winsys;
 	nouveau_channel_free(&screen->channel);
-	ws->destroy(ws);
+	if (ws)
+		ws->destroy(ws);
 }
 
diff --git a/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c b/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
index 660dbd0..d4bf124 100644
--- a/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
+++ b/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
@@ -19,7 +19,8 @@ nouveau_drm_destroy_winsys(struct pipe_winsys *s)
 {
 	struct nouveau_winsys *nv_winsys = nouveau_winsys(s);
 	struct nouveau_screen *nv_screen= nouveau_screen(nv_winsys->pscreen);
-	nouveau_device_close(&nv_screen->device);
+	if (nv_screen)
+		nouveau_device_close(&nv_screen->device);
 	FREE(nv_winsys);
 }
 
-- 
1.7.1.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [mesa PATCH] nouveau: handle early initialization errors
       [not found] ` <20100823204058.GA8160-OI9uyE9O0yo@public.gmane.org>
@ 2010-08-25 22:36   ` Francisco Jerez
  0 siblings, 0 replies; 2+ messages in thread
From: Francisco Jerez @ 2010-08-25 22:36 UTC (permalink / raw)
  To: Marcin Slusarz; +Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1.1: Type: text/plain, Size: 1532 bytes --]

Marcin Slusarz <marcin.slusarz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:

> handle very early errors in pipe_screen creation (failure of
> nouveau_screen_init in nv50_screen_create)
> ---
>  src/gallium/drivers/nouveau/nouveau_screen.c       |    3 ++-
>  .../winsys/nouveau/drm/nouveau_drm_winsys.c        |    3 ++-
>  2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/nouveau/nouveau_screen.c b/src/gallium/drivers/nouveau/nouveau_screen.c
> index 513e5e0..ebb21a6 100644
> --- a/src/gallium/drivers/nouveau/nouveau_screen.c
> +++ b/src/gallium/drivers/nouveau/nouveau_screen.c
> @@ -258,6 +258,7 @@ nouveau_screen_fini(struct nouveau_screen *screen)
>  {
>  	struct pipe_winsys *ws = screen->base.winsys;
>  	nouveau_channel_free(&screen->channel);
> -	ws->destroy(ws);
> +	if (ws)
> +		ws->destroy(ws);
>  }
>  
> diff --git a/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c b/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
> index 660dbd0..d4bf124 100644
> --- a/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
> +++ b/src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c
> @@ -19,7 +19,8 @@ nouveau_drm_destroy_winsys(struct pipe_winsys *s)
>  {
>  	struct nouveau_winsys *nv_winsys = nouveau_winsys(s);
>  	struct nouveau_screen *nv_screen= nouveau_screen(nv_winsys->pscreen);
> -	nouveau_device_close(&nv_screen->device);
> +	if (nv_screen)
> +		nouveau_device_close(&nv_screen->device);
>  	FREE(nv_winsys);
>  }

Thanks, pushed.

[-- Attachment #1.2: Type: application/pgp-signature, Size: 229 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-08-25 22:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-23 20:40 [mesa PATCH] nouveau: handle early initialization errors Marcin Slusarz
     [not found] ` <20100823204058.GA8160-OI9uyE9O0yo@public.gmane.org>
2010-08-25 22:36   ` Francisco Jerez

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.