On Fri, 18 Nov 2011 12:50:36 -0800, Chad Versace <chad.vers...@linux.intel.com> wrote: > Essentially, this patch just globally substitutes `irb->region` with > `irb->mt->region` and then does some minor cleanups to avoid segfaults > and other problems. > > This is in preparation for > 1. Fixing scatter/gather for mipmapped separate stencil textures. > 2. Supporting HiZ for mipmapped depth textures. > > As a nice benefit, this lays down some preliminary groundwork for easily > texturing from any renderbuffer, even those of the window system. > > A future commit will replace intel_mipmap_tree::hiz_region with a miptree. > > v2: > - Return early in intel_process_dri2_buffer_*() if region allocation > fails. > - Fix double semicolon. > - Fix miptree reference leaks in the following functions: > intel_process_dri2_buffer_with_separate_stencil() > intel_image_target_renderbuffer_storage()
> @@ -702,20 +696,21 @@ intel_alloc_renderbuffer_storage(struct gl_context * > ctx, struct gl_renderbuffer > _mesa_reference_renderbuffer(&irb->wrapped_stencil, stencil_rb); > > } else { > - irb->region = intel_region_alloc(intel->intelScreen, tiling, cpp, > - width, height, true); > - if (!irb->region) > + irb->mt = intel_miptree_create_for_renderbuffer(intel, rb->Format, > + tiling, cpp, > + width, height); > + if (!irb->mt) > return false; > > if (intel->vtbl.is_hiz_depth_format(intel, rb->Format)) { > - irb->hiz_region = intel_region_alloc(intel->intelScreen, > - I915_TILING_Y, > - irb->region->cpp, > - irb->region->width, > - irb->region->height, > - true); > - if (!irb->hiz_region) { > - intel_region_release(&irb->region); > + irb->mt->hiz_region = intel_region_alloc(intel->intelScreen, > + I915_TILING_Y, > + cpp, > + rb->Width, > + rb->Height, > + true); > + if (!irb->mt) { > + intel_miptree_release(&irb->mt); > return false; I think this was meant to be if (!irb->mt->his_region). Other than that, Reviewed-by: Eric Anholt <e...@anholt.net>
pgpjrqfOfvvBA.pgp
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev