Mesa (10.5): 30 new commits

Emil Velikov evelikov at kemper.freedesktop.org
Thu Mar 12 13:10:30 UTC 2015


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ce13666feba564b850d326ef05b6fc05c6435c6b
Author: Rob Clark <robclark at freedesktop.org>
Date:   Tue Feb 10 04:42:32 2015 -0500

    freedreno/ir3: fix failed assert in grouping
    
    Turns out there are scenarios where we need to insert mov's in "front"
    of an input.  Triggered by shaders like:
    
      VERT
      DCL IN[0]
      DCL IN[1]
      DCL OUT[0], POSITION
      DCL OUT[1], GENERIC[9]
      DCL SAMP[0]
      DCL TEMP[0], LOCAL
        0: MOV TEMP[0].xy, IN[1].xyyy
        1: MOV TEMP[0].w, IN[1].wwww
        2: TXF TEMP[0], TEMP[0], SAMP[0], 1D_ARRAY
        3: MOV OUT[1], TEMP[0]
        4: MOV OUT[0], IN[0]
        5: END
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit 27648efa2070e8db111908314d8b924d3717dbb0)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=065a24bd969b3e7d429d72ae328dbfa6affd9455
Author: Rob Clark <robclark at freedesktop.org>
Date:   Wed Feb 25 13:54:25 2015 -0500

    freedreno/ir3: handle flat bypass for a4xx
    
    We may not need this for later a4xx patchlevels, but we do at least need
    this for patchlevel 0.  Bypass bary.f for fetching varyings when flat
    shading is needed (rather than configure via cmdstream).  This requires
    a special dummy bary.f w/ (ei) flag to signal to scheduler when all
    varyings are consumed.  And requires shader variants based on rasterizer
    flatshade state to handle TGSI_INTERPOLATE_COLOR.
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit e9f2abe349886ae5423c7c31d201e7d587a3695a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1dec8bbb8e2971ac0cd55dee279ce10ae22242f1
Author: Rob Clark <robclark at freedesktop.org>
Date:   Thu Feb 26 15:13:10 2015 -0500

    freedreno/ir3: add support for memory (cat6) instructions
    
    Scheduled basically the same as texture (cat5) instructions, using (sy)
    flag for synchronization.
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit 9d732d3125e1b39788a642a5723aeb54cb1983f3)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=af4d1096f7e82c7759692ac1b83678d3c8029f4c
Author: Rob Clark <robclark at freedesktop.org>
Date:   Thu Feb 26 13:35:31 2015 -0500

    freedreno/ir3: fix up cat6 instruction encodings
    
    I think there is at least one more sub-encoding, but these two should be
    enough to cover the common load/store instructions.
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit 20b50a071271e2caf8a4c3d4fd72f877af8a18d9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=645d7f464b669f24c81fb2d78ad3f6f317e8a8c3
Author: Rob Clark <robclark at freedesktop.org>
Date:   Tue Feb 24 11:55:28 2015 -0500

    freedreno/a4xx: aniso filtering
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit dd70e786747f7e4800f4bba245373c5ffa3baeee)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=80c4ba0c8351ceb45e99686ce4b54a3cd1c869ca
Author: Rob Clark <robclark at freedesktop.org>
Date:   Tue Feb 24 11:48:01 2015 -0500

    freedreno: update generated headers
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit c70097ae8655d84a900cb27d165ca59d66411e29)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aca5fdae061ed5f1ebf3762f71d2f2d3beb25c39
Author: Rob Clark <robclark at freedesktop.org>
Date:   Sat Feb 21 13:55:37 2015 -0500

    freedreno/a4xx: set PC_PRIM_VTX_CNTL.VAROUT properly
    
    Fixes xonotic, some webgl stuff, and really pretty much anything with
    more than 4 varyings.
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit 51e335742e55d6725fd5c4558158769a32f70f22)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7abc57b66921186feb2e013b345b0f1b70364bf3
Author: Rob Clark <robclark at freedesktop.org>
Date:   Sat Feb 21 13:50:52 2015 -0500

    freedreno: update generated headers
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit fb1301e40abbac1de973563cacd2c7f31aa6bb4f)
    
    Conflicts:
    	src/gallium/drivers/freedreno/a3xx/a3xx.xml.h

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=20ea65beb3ecb45419a45528dc3b7e8bd20bd0e6
Author: Rob Clark <robclark at freedesktop.org>
Date:   Sat Feb 21 13:39:06 2015 -0500

    freedreno/a4xx: bit of cleanup
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit bdf023482a6fd07adef090fb66a4aaaac22810fc)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=38777e1345f2471f5889b1f145539e3d5d7a59c7
Author: Rob Clark <robclark at freedesktop.org>
Date:   Tue Feb 3 15:52:53 2015 -0500

    freedreno/a2xx: fix increment in assert
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88883
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit 68552266535747bad1eff34d856c43158398b9bf)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4de2f250830ec119d13153da4651a9c06079555e
Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Tue Mar 10 11:36:43 2015 +0100

    i965: Fix out-of-bounds accesses into pull_constant_loc array
    
    The piglit test glsl-fs-uniform-array-loop-unroll.shader_test was designed
    to do an out of bounds access into an uniform array to make sure that we
    handle that situation gracefully inside the driver, however, as Ken describes
    in bug 79202, Valgrind reports that this is leading to an out-of-bounds access
    in fs_visitor::demote_pull_constants().
    
    Before accessing the pull_constant_loc array we should make sure that
    the uniform we are trying to access is valid.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79202
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    (cherry picked from commit 6ac1bc90c4a7a6f32901a9782e14b090f6fe5270)
    Nominated-by: Matt Turner <mattst88 at gmail.com>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fbd06fe65c0fe57f0dea96c87d9f0eb5abc72bb7
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Feb 26 17:45:49 2015 -0800

    i965/fs: Don't issue FB writes for bound but unwritten color targets.
    
    We used to loop over all color attachments, and emit FB writes for each
    one, even if the shader didn't write to a corresponding output variable.
    Those color attachments would be filled with garbage (undefined values).
    
    Football Manager binds a framebuffer with 4 color attachments, but draws
    to it using a shader that only writes to gl_FragData[0..2].  This meant
    that color attachment 3 would be filled with garbage, resulting in
    rendering artifacts.  Now we skip writing to it, fixing rendering.
    
    Writes to gl_FragColor initialize outputs[0..nr_color_regions-1] to
    GRFs, while writes to gl_FragData[i] initialize outputs[i].
    
    Thanks to Jason Ekstrand for tracking this down.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86747
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit e95969cd9548033250ba12f2adf11740319b41e7)
    
    Conflicts:
    	src/mesa/drivers/dri/i965/brw_fs_visitor.cpp

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c232d765affc06cc6e81ddee07656919e7f17aa5
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Feb 26 22:55:54 2015 -0800

    i965/fs: Make emit_shader_time_end() insert before EOT.
    
    Previously, we emitted the shader-time epilogue from emit_fb_writes(),
    during the middle of looping through color regions (or emit_urb_writes
    for the VS).  This is duplicated several times and rather awkward.
    
    I need to fix a bug in our FB write handling, and it will be a lot
    easier if we move emit_shader_time_end() out of there.
    
    Now, we simply emit FB writes/URB writes, and subsequently have
    emit_shader_time_end() insert instructions before the final SEND with
    EOT.  Not only is this simpler, it's actually a slight improvement:
    we now include the MOVs to set up the final FB write payload in our
    shader-time measurements.
    
    Note that INTEL_DEBUG=shader_time only exists on Gen7+, and uses
    send-from-GRF.  (In the past, we might have hit trouble where both
    attempt to use MRFs for messages; that's not a problem now.)
    
    v2: Rebase on v3 of the previous patch and other shader_time fixes.
    
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com> [v1]
    Acked-by: Matt Turner <mattst88 at gmail.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit 4ebeb71573ad44f7657810dc5dd2c9030e3e63db)
    
    Conflicts:
    	src/mesa/drivers/dri/i965/brw_fs.cpp

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0d625e1ae7a112fee1e5068b7817e07ee1a253e1
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Feb 26 23:51:27 2015 -0800

    i965/fs: Make get_timestamp() pass back the MOV rather than emitting it.
    
    This makes another part of the INTEL_DEBUG=shader_time code emittable
    at arbitrary locations, rather than just at the end of the instruction
    stream.
    
    v2: Don't lose smear!  Caught by Topi Pohjolainen.
    v3: Don't set smear on the destination of the MOV.  Thanks Topi!
    
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit e43af8d09f919d02b5ac0810c1c0f1783cbef6ef)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9e182658dbb329e6a8e5b54794d173a878c9151
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Feb 26 22:49:04 2015 -0800

    i965/fs: Make emit_shader_time_write return rather than emit.
    
    Instead of emit_shader_time_write, we now do emit(SHADER_TIME_ADD(...)).
    The advantage is that we can also insert a shader time write at an
    arbitrary location in the instruction stream, rather than being
    restricted to emitting at the end.
    
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit bea854c7f33cc10b8292f931f114afc4f88a8dd4)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=82ef4994ddc0222241b101bcda8e729e729d93b0
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Sun Mar 8 00:13:41 2015 -0800

    i965/fs: Set smear on shader_time diff register.
    
    The ADD(diff, diff, fs_reg(-2u)) instruction reads diff, which is a
    width 1 register.  We need to read it as <0,1,0> with a subreg of 0,
    which is what smear accomplishes.
    
    Fixes assertion:
    brw_eu_emit.c:285: validate_reg: Assertion `hstride == 0' failed.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86974
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit f1adc45dbe649cdd4538fb96f6d2a27328bbfba1)
    
    Conflicts:
    	src/mesa/drivers/dri/i965/brw_fs.cpp

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c3fc8b2870668fe0313fd35b2789306dbf3b9594
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Sat Mar 7 23:01:07 2015 -0800

    i965/fs: Set force_writemask_all on shader_time instructions.
    
    These computations don't have anything to do with the currently
    executing channels, so they should use force_writemask_all.
    
    This fixes assert failures.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86974
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit ef9cc7d0c176669c03130abf576f2b700be39514)
    
    Conflicts:
    	src/mesa/drivers/dri/i965/brw_fs.cpp

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aea510a95fab2e3c2ddeca2a3b3aae349d1ec3dc
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Mon Mar 9 21:20:03 2015 +0100

    r300g: fix sRGB->sRGB blits
    
    Cc: 10.5 10.4 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit c939231e7223510408a446400ad23b8b5ce2922e)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c898d5c931ff9a19da93f2cc700bb92e02f60cfa
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Feb 24 23:15:59 2015 +0100

    r300g: fix a crash when resolving into an sRGB texture
    
    Cc: 10.5 10.4 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 9953586af2254f83a610d4cd284f52f37fa18b98)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=32a7f119dc0e65574adfc56600d68dc79ec0c840
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Mon Mar 9 20:04:04 2015 +0100

    r300g: fix RGTC1 and LATC1 SNORM formats
    
    Cc: 10.5 10.4 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 74a757f92f7377f59c0feb7f84c7518f9a167631)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=578ac079c77abbe9c972bb95ddb57abea7eeec99
Author: Stefan Dösinger <stefandoesinger at gmx.at>
Date:   Mon Mar 9 16:15:13 2015 +0100

    r300g: Fix the ATI1N swizzle (RGTC1 and LATC1)
    
    This fixes the GL_COMPRESSED_RED_RGTC1 part of piglit's rgtc-teximage-01
    test as well as the precision part of Wine's 3dc format test (fd.o bug
    89156).
    
    The Z component seems to contain a lower precision version of the
    result, probably a temporary value from the decompression computation.
    The Y and W component contain different data that depends on the input
    values as well, but I could not make sense of them (Not that I tried
    very hard).
    
    GL_COMPRESSED_SIGNED_RED_RGTC1 still seems to have precision problems in
    piglit, and both formats are affected by a compiler bug if they're
    sampled by the shader with a swizzle other than .xyzw. Wine uses .xxxx,
    which returns random garbage.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89156
    Signed-off-by: Marek Olšák <marek.olsak at amd.com>
    Cc: 10.5 10.4 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit f710b99071fe4e3c2ee88cdcb6bb5c10298e014e)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0ea3c150cfc273e66626c8dc0958269c68d9e739
Author: Rob Clark <robclark at freedesktop.org>
Date:   Thu Mar 5 15:27:27 2015 -0500

    freedreno/ir3: fix silly typo for binning pass shaders
    
    Was resulting in gl_PointSize write being optimized out, causing
    particle system type shaders to hang if hw binning enabled.
    
    Fixes neverball, OGLES2ParticleSystem, etc.
    
    Signed-off-by: Rob Clark <robclark at freedesktop.org>
    (cherry picked from commit 60096ed906e5ebfdce41024c7af69f03b96dbe82)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b542424ab893ecfc3dbff4176d641fc0bacba203
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Sat Mar 7 18:25:54 2015 -0500

    freedreno/ir3: get the # of miplevels from getinfo
    
    This fixes ARB_texture_query_levels to actually return the desired
    value.
    
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Reviewed-by: Rob Clark <robclark at freedesktop.org>
    Cc: "10.4 10.5" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit cb3eb43ad690a7355429ba8dcd40120646c55b9c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d8ed6aa4742b37d2fda95fa7e6bea584582569e4
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Sat Mar 7 17:41:47 2015 -0500

    freedreno/ir3: fix array count returned by TXQ
    
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Reviewed-by: Rob Clark <robclark at freedesktop.org>
    Cc: "10.4 10.5" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 8ac957a51c67fc095db9539df6482b9533b1d05c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5b1bd4fc9e442568bacdec3a7e9697a87968158d
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Mon Mar 2 21:22:27 2015 -0500

    freedreno: move fb state copy after checking for size change
    
    Fixes: 1f3ca56b ("freedreno: use util_copy_framebuffer_state()")
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Reviewed-by: Rob Clark <robclark at freedesktop.org>
    Cc: "10.4 10.5" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit f3dfe6513c26d1ce50b3b0fc830d4d8ff7f6b922)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=cddbb3a7ba632e525b5c5a57c39e78b1a926c70f
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Mar 5 23:18:36 2015 -0800

    glsl: Mark array access when copying to a temporary for the ?: operator.
    
    Piglit's spec/glsl-1.20/compiler/structure-and-array-operations/
    array-selection.vert test contains the following code:
    
       gl_Position = (pick_from_a_or_b ? a : b)[i];
    
    where "a" and "b" are uniform vec4[2] variables.
    
    ast_to_hir creates a temporary vec4[2] variable, conditional_tmp, and
    generates an if-block to copy one or the other:
    
       (declare (temporary) (array vec4 2) conditional_tmp)
       (if (var_ref pick_from_a_or_b)
         ((assign () (var_ref conditional_tmp) (var_ref a)))
         ((assign () (var_ref conditional_tmp) (var_ref b))))
    
    However, we failed to update max_array_access for "a" and "b", so it
    remained 0 - here, the whole array is being accessed.  At link time,
    update_array_sizes() used this bogus information to change the types
    of "a" and "b" to vec4[1].  We then had assignments from a vec4[1] to
    a vec4[2], which is highly illegal.
    
    This tripped assertions in nir_split_var_copies with scalar VS.
    
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
    Cc: mesa-stable at lists.freedesktop.org
    (cherry picked from commit 9f1e250e77ebd9255bbd9a83bd68c9e4068c2aab)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e4d3bd685540e59cd7fe722ad6bd3a2c32f277ec
Author: Neil Roberts <neil at linux.intel.com>
Date:   Wed Feb 25 15:33:08 2015 +0000

    meta: Fix the y offset for 1D_ARRAY in _mesa_meta_pbo_TexSubImage
    
    The yoffset needs to be interpreted as a slice offset for 1D array
    textures. This patch implements that by moving the yoffset into
    zoffset similar to how it moves the height into depth.
    
    Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
    Cc: "10.5" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 7286a6899176a8b26aa794097288eff941f5178c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=614e7ebdad0ea1e0f14773db195cfcb75f74558d
Author: Neil Roberts <neil at linux.intel.com>
Date:   Thu Feb 26 12:53:50 2015 +0000

    meta: Allow GL_UN/PACK_IMAGE_HEIGHT in _mesa_meta_pbo_Get/TexSubImage
    
    Now that a layered source PBO is interpreted as a single tall 2D image
    it's quite easy to accept the image height packing option by just
    creating an image that is tall enough to include the image padding.
    
    I'm not sure whether the image height property should affect 1D_ARRAY
    textures. My intuition and interpretation of the GL spec (which is a
    bit vague) would be that it shouldn't. However the software fallback
    path in Mesa uses the property for packing but not for unpacking. The
    binary NVidia driver uses it for both. This patch doesn't use it for
    either case so it is different from the software fallback. There is
    some discussion about this here:
    
    http://lists.freedesktop.org/archives/mesa-dev/2015-February/077925.html
    
    This is tested by the texsubimage Piglit test with the array and pbo
    arguments. Previously this test was skipping this code path because it
    always sets the image height.
    
    I've also tested it by modifying the getteximage-targets test. It
    wasn't using this code path before because it was using the default
    texture object so this code couldn't successfully create a frame
    buffer. I also modified it to add some image padding with the image
    height in the PBO.
    
    Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
    Cc: "10.5" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit a08bff1e98b8e630f8bdf341af1491cd99e7d104)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7f32fa0dcb7dcdc9cb28521c26ec93e48c198bfa
Author: Neil Roberts <neil at linux.intel.com>
Date:   Thu Feb 26 12:12:15 2015 +0000

    Revert "common: Fix PBOs for 1D_ARRAY."
    
    This reverts commit 546aba143d13ba3f993ead4cc30b2404abfc0202.
    
    I think the changes to the calls to glBlitFramebuffer from this patch
    are no different to what it was doing previously because it used to
    set height to 1 before doing the blits. However it was introducing
    some problems with the blit for layer 0 because this was no longer
    special cased. It didn't fix problems with the yoffset which needs to
    be interpreted as a slice offset. I think a better solution would be
    to modify the original if statement to cope with the yoffset.
    
    Conflicts:
    	src/mesa/drivers/common/meta_tex_subimage.c
    
    Cc: "10.5" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
    (cherry picked from commit 7d10d2feee381739eef97f4720cbadbd65bb4fc6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a15de1ae1aa0a74f3caeb9f651430facefee8937
Author: Neil Roberts <neil at linux.intel.com>
Date:   Wed Feb 25 15:10:01 2015 +0000

    meta: In pbo_{Get,}TexSubImage don't repeatedly rebind the source tex
    
    A layered PBO image is now interpreted as a single tall 2D image so
    the z argument in _mesa_meta_bind_fbo_image is ignored. Therefore this
    was just redundantly rebinding the same image repeatedly.
    
    Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
    (cherry picked from commit a44606eb8164be2aa37eb288fd90894d74bd0935)




More information about the mesa-commit mailing list