Mesa (10.0): 24 new commits

Carl Worth cworth at kemper.freedesktop.org
Tue Jan 28 23:52:00 UTC 2014


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=319d6d6067c6c617645ec1af875375c0d6d46a25
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Thu Dec 19 11:04:29 2013 -0800

    radeon / r200: Pass the API into _mesa_initialize_context
    
    Otherwise an application that requested an OpenGL ES 1.x context would
    actually get a desktop OpenGL context.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Cc: "9.1 9.2 10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit 33214679bb632a80d4339ffa0f28f7620d510658)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6f27353c202885f819d7e0aac60f43ba109d85d8
Author: Tom Stellard <thomas.stellard at amd.com>
Date:   Fri Jan 24 15:48:26 2014 -0500

    r600g/compute: Emit DEALLOC_STATE on cayman after dispatching a compute shader.
    
    This is necessary to prevent the next SURFACE_SYNC packet from
    hanging the GPU.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=73418
    
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
    
    CC: "9.2" "10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit d51dbe048afd2131eb3675e9cd868ce73325a61d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=99f695f716ef69b78204625cffcffe1b745a6c0e
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Fri Jan 10 18:00:17 2014 +0000

    gallium/rtasm: handle mmap failures appropriately
    
    For a variety of reasons mmap (selinux and pax to name
    a few) and can fail and with current code. This will
    result in a crash in the driver, if not worse.
    
    This has been the case since the inception of the
    gallium copy of rtasm.
    
    Cc: 9.1 9.2 10.0 <mesa-stable at lists.freedesktop.org>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73473
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    Reviewed-by: Jakob Bornecrantz <jakob at vmware.com>
    (cherry picked from commit 4dd445f1cf80292f10eda53665cefc2a674d838d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ef75bf0777fa3de4012899b8ee12e21e4a07ed1f
Author: Carl Worth <cworth at cworth.org>
Date:   Tue Jan 28 13:16:25 2014 -0800

    Drop another couple of patches.
    
    These depend on code which does not exist on the stable branch.

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0cd3d50f07d7d11a56db32b356c55feb3f1a5ce8
Author: Matt Turner <mattst88 at gmail.com>
Date:   Fri Jan 17 14:32:19 2014 -0800

    glcpp: Define GL_EXT_shader_integer_mix in both GL and ES.
    
    Cc: mesa-stable at lists.freedesktop.org
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 66ef8feb4df2780e06c92c43b6523623aaa1b2eb)
    
    Conflicts:
    	src/glsl/glcpp/glcpp-parse.y

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=31b2e73a2dda40de27485dbbde03a22130cce429
Author: Carl Worth <cworth at cworth.org>
Date:   Tue Jan 28 12:51:53 2014 -0800

    cherry-ignore: Ignore several patches not yet ready for the stable branch
    
    The comments describe the reasons for each being excluded.

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=df62691a02f07e6fb98e48274eb917ba33c43bac
Author: Brian Paul <brianp at vmware.com>
Date:   Mon Jan 20 10:57:20 2014 -0800

    draw: fix incorrect vertex size computation in LLVM drawing code
    
    We were calling draw_total_vs_outputs() too early.  The call to
    draw_pt_emit_prepare() could result in the vertex size changing.
    So call draw_total_vs_outputs() after draw_pt_emit_prepare().
    
    This fix would seem to be needed for the non-LLVM code as well,
    but it's not obvious.  Instead, I added an assertion there to
    try to catch this problem if it were to occur there.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=72926
    Cc: 10.0 <mesa-stable at lists.freedesktop.org>
    Reviewed-by: José Fonseca <jfonseca at vmware.com>
    (cherry picked from commit ad814d04ca5d579538885a595331b5b27caefd2a)
    
    Conflicts:
    	src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fe2678accdd88df5126f5d7eae0be00cd9dd2e4d
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri Jan 24 10:47:49 2014 -0800

    glsl: Fix chained assignments of vector channels.
    
    Simple shaders such as:
    
        void splat(vec2 v, float f) {
            v[0] = v[1] = f;
        }
    
    failed to compile with the following error:
    error: value of type vec2 cannot be assigned to variable of type float
    
    First, we would process v[1] = f, and transform:
    LHS: (expression float vector_extract (var_ref v) (constant int (1)))
    RHS: (var_ref f)
    into:
    LHS: (var_ref v)
    RHS: (expression vec2 vector_insert (var_ref v) (constant int (1))
                     (var_ref f))
    
    Note that the LHS type is now vec2, not a float.  This is surprising,
    but not the real problem.
    
    After emitting assignments, this ultimately becomes:
    (declare (temporary) vec2 assignment_tmp)
    (assign (xy)
      (var_ref assignment_tmp)
      (expression vec2 vector_insert (var_ref v) (constant int (1))
                  (var_ref f)))
      (assign (xy) (var_ref v) (var_ref assignment_tmp))
    
    We would then return (var_ref assignment_tmp) as the rvalue, which has
    the wrong type---it should be float, but is instead a vec2.
    
    To fix this, we simply return (vector_extract (var_ref assignment_temp)
    <the appropriate channel>) to pull out the desired float value.
    
    Fixes Piglit's chained-assignment-with-vector-constant-index.vert and
    chained-assignment-with-vector-dynamic-index.vert tests.
    
    Cc: mesa-stable at lists.freedesktop.org
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74026
    Reported-by: Dan Ginsburg <dang at valvesoftware.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit 44a86e2b4fca7c7cab243dfa62dc17f4379fc8e3)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=83e9eb81be05d018cf04bfada0f4005145c9f7b8
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri Jan 24 10:42:48 2014 -0800

    glsl: Rename "expr" to "lhs_expr" in vector_extract munging code.
    
    When processing assignments, we have both an LHS and RHS.  At a glance,
    "lhs_expr" clearly refers to the LHS, while a generic name like "expr"
    is ambiguous.
    
    Cc: mesa-stable at lists.freedesktop.org
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit 6c158e110c0aec5371bea6fc1c14f28b045797b0)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8c467b825fad9483ada35e5ceac3c9b9a8cbb286
Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Fri Jan 17 12:23:05 2014 -0800

    glsl: Disable ARB_texture_rectangle in shader version 100.
    
    OpenGL with ARB_ES2_compatibility allows shaders that specify #version
    100.
    
    This fixes the Khronos OpenGL test(Texture_Rectangle_Samplers_frag.test)
    failure.
    
    Cc: mesa-stable at lists.freedesktop.org
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
    (cherry picked from commit c907595ba77a0c74b18b6908f71fafc3c08e2886)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=79ef990ef864e43d48d89f4e5ddd050e657841ab
Author: Brian Paul <brianp at vmware.com>
Date:   Thu Jan 23 09:47:34 2014 -0700

    st/mesa: fix glReadBuffer(GL_NONE) segfault
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73956
    Cc: 10.0 <mesa-stable at lists.freedesktop.org>
    Tested-by: Ahmed Allam <ahmabdabd at hotmail.com>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    (cherry picked from commit f7c118ffbfdafaccd4ec05d4a040d07e120c5090)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b1694c9f870f0427addde783c0a4c7091863c2cb
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Jan 21 19:53:45 2014 +0100

    gallium/util: util_format_srgb should not return FORMAT_NONE for sRGB formats
    
    This fixes a serious regression introduced
    in 4e549ddb500cf677b6fa16d9ebdfa67cc23da097.
    
    Cc: 9.2 10.0 <mesa-stable at lists.freedesktop.org>
    
    Reviewed-by: Brian Paul <brianp at vmware.com>
    (cherry picked from commit d40532f260c15d56e5fa836147e02c031a999682)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e2b6834c87d714248b119e2a79eb2b9c7faba701
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Fri Jan 17 21:41:38 2014 -0500

    st/vdpau: don't return a device if the screen doesn't support NPOT
    
    NV3x cards don't support NPOT textures. Technically this restriction
    could be worked around, but since it also doesn't expose any video
    decoding hw, just turn it off entirely.
    
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Cc: 10.0 <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Christian König <christian.koenig at amd.com>
    (cherry picked from commit 00e4314f6d605e467b9a386cacab7eec48b9e429)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=04e5f2e94f5628fa8009029255c91e6bf84ec7da
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Thu Jan 16 15:37:53 2014 +0000

    nv50: access only the available amount of constbuf
    
    The textures array is defined as a number of NV50_MAX_PIPE_CONSTBUFS
    per shader stage. Currently the nv50 driver handles only 3 shader
    stages, thus we wreck chaos when accessing array-out-of-bounds.
    
    Cc: 9.1 9.2 10.0 <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
    (cherry picked from commit 12e744abbb9fd8cb07a12954aaa7127521d5af0a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a3f259e4049a4e2e12d53bc3cb35e3a684afe0d4
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Thu Jan 16 15:35:02 2014 +0000

    nv50: access only the available amount of textures
    
    The textures array is defined as a number of PIPE_MAX_SAMPLERS per shader stage.
    Currently nv50 driver handles only 3 shader stages, thus we wreck chaos when
    accessing array-out-of-bounds.
    
    Fixes a segfault in piglit/bin/arb_texture_buffer_object-data-sync -fbo -auto
    
    Cc: 9.1 9.2 10.0 <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
    (cherry picked from commit d606ca37eb20f18d8ac4727c68831fcecb2f7de4)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=705da421307cd96f7905923827461ada88abf932
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Thu Jan 16 13:13:28 2014 -0500

    mesa: fix GL_COLOR_SUM enum for drivers without ARB_vertex_program
    
    Commit c13970808 (mesa: GL_EXT_secondary_color is not optional) changed
    
    CHECK_EXTENSION2(EXT_secondary_color, ARB_vetex_program, cap)
    
    to
    
    CHECK_EXTENSION(ARB_vertex_program, cap)
    
    However CHECK_EXTENSION2 checks that either extension is available, not
    both. Remove the extension check entirely since the intent was for it to
    always be enabled.
    
    v2: Fix glGet*(GL_COLOR_SUM) too.  Suggested by Ian.
    
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Cc: 9.2 10.0 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 739dc95e676b31349525b7daf99453b987748248)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b6464413074931968c78806afa9423ba9d80b8d9
Author: Aaron Watry <awatry at gmail.com>
Date:   Wed Dec 18 14:40:49 2013 -0600

    st/dri: prevent leak of dri option default values
    
    v2: Change comment style
    
    CC: "10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    (cherry picked from commit ce3528896b37c7d8ef051780e29ea9588fada9da)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0ec1ae90ef78cbae2d964250996ac8f59adf58c1
Author: Aaron Watry <awatry at gmail.com>
Date:   Tue Jan 7 14:45:41 2014 -0600

    radeon: Move gfx/dma cs cleanup to r600_common_context_cleanup
    
    The radeonsi code was not cleaning up either of these items leading to
    leaked memory.
    
    v2: Move cleanup to r600_common_context_cleanup instead of duplicating
        the logic for SI
    
    CC: "10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    (cherry picked from commit 5ac3229f76f02453ae7e971d515b01fb56ad3fa5)
    
    Conflicts:
    	src/gallium/drivers/radeon/r600_pipe_common.c

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0fd4cf4bf811f60363574e4baf9b992189003375
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Jan 14 13:41:19 2014 -0800

    mesa: Add COMPRESSED_RGBA_S3TC_DXT1_EXT to COMPRESSED_TEXTURE_FORMATS for GLES
    
    The ES and desktop GL specs diverge here.  Yay!
    
    In desktop OpenGL, the driver can perform online compression of
    uncompressed texture data.  GL_NUM_COMPRESSED_TEXTURE_FORMATS and
    GL_COMPRESSED_TEXTURE_FORMATS give the application a list of formats
    that it could ask the driver to compress with some expectation of
    quality.  The GL_ARB_texture_compression spec calls this "suitable for
    general-purpose usage."  As noted above, this means
    GL_COMPRESSED_RGBA_S3TC_DXT1_EXT is not included in the list.
    
    In OpenGL ES, the driver never performs compression.
    GL_NUM_COMPRESSED_TEXTURE_FORMATS and GL_COMPRESSED_TEXTURE_FORMATS give
    the application a list of formats that the driver can receive from the
    application.  It is the *complete* list of formats.  The
    GL_EXT_texture_compression_s3tc spec says:
    
        "New State for OpenGL ES 2.0.25 and 3.0.2 Specifications
    
            The queries for NUM_COMPRESSED_TEXTURE_FORMATS and
            COMPRESSED_TEXTURE_FORMATS include COMPRESSED_RGB_S3TC_DXT1_EXT,
            COMPRESSED_RGBA_S3TC_DXT1_EXT, COMPRESSED_RGBA_S3TC_DXT3_EXT,
            and COMPRESSED_RGBA_S3TC_DXT5_EXT."
    
    Note that the addition is only to the OpenGL ES specification!
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    See-also: http://lists.freedesktop.org/archives/mesa-dev/2013-October/047439.html
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Reviewed-by: Brian Paul <brianp at vmware.com>
    Cc: "10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 0a75909b3f554b20c9672fc72efbc4f6ec3ce4ea)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=45f0736aa56ecd6dc558ff73779c6f6bb8582c90
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Wed Jan 15 11:39:24 2014 +0000

    st/mesa: use signed temporary variable to store _ColorDrawBufferIndexes
    
    The temporary variable used to store _ColorDrawBufferIndexes must be
    signed (GLint), otherwise the following conditional will be incorrectly
    evaluated. Leading to crashes in the driver/mesa or accessing/writing
    to arbitrary memory location. The bug dates back to 2009.
    
    Cc: 10.0 9.2 9.1 <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    (cherry picked from commit bfcf78c1101a1cbcdd9a479722203047c8d6c26a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b513c66a4ebd5b098bc409da8611af579c55076f
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Sun Jan 12 22:42:05 2014 +0000

    mesa: use signed temporary variable to store _ColorDrawBufferIndexes
    
    _ColorDrawBufferIndexes is defined as GLint* and using a GLuint*
    will result in the first part of the conditional to be evaluated to
    true always.
    
    Unintentionally introduced by the following commit, this will result
    in a driver segfault if one is using an old version of the piglit test
    
        bin/clearbuffer-mixed-format -auto -fbo
    
    commit 03d848ea1003abefd8fe51a5b4a780527cd852af
    Author: Marek Olšák <marek.olsak at amd.com>
    Date:   Wed Dec 4 00:27:20 2013 +0100
    
        mesa: fix interpretation of glClearBuffer(drawbuffer)
    
        This corresponding piglit tests supported this incorrect behavior instead of
        pointing at it.
    
    Cc: Marek Olšák <marek.olsak at amd.com>
    Cc: 10.0 9.2 9.1 <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    (cherry picked from commit 10368e1446e3b537c1dc4cb536994a4d01cfd2f0)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=dbc0ae1079d6ce5349b25a86a91c78371c226809
Author: Michał Górny <mgorny at gentoo.org>
Date:   Sat Dec 28 15:22:09 2013 +0100

    Use AC_PATH_TOOL instead of AC_PATH_PROG for llvm-config.
    
    This should help with cross-compiling and multilib when $CHOST-specific
    llvm-config is expected rather than build host default one.
    
    It will help us a bit in Gentoo where we've started using
    i686-pc-linux-gnu-llvm-config for 32-bit multilib LLVM.
    
    Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
    Signed-off-by: Michał Górny <mgorny at gentoo.org>
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73100
    
    CC: "10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 5ea23763349346f642d8efdf27e1ea05e9b9e2a8)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9ca4c8f6a22bc762998fc2a95404dfb51c686a0a
Author: Paul Berry <stereotype441 at gmail.com>
Date:   Fri Jan 10 18:56:14 2014 -0800

    i965: Ensure that all necessary state is re-emitted if we run out of aperture.
    
    Prior to this patch, if we ran out of aperture space during
    brw_try_draw_prims(), we would rewind the batch buffer pointer
    (potentially throwing some state that may have been emitted by
    brw_upload_state()), flush the batch, and then try again.  However, we
    wouldn't reset the dirty bits to the state they had before the call to
    brw_upload_state().  As a result, when we tried again, there was a
    danger that we wouldn't re-emit all the necessary state.  (Note: prior
    to the introduction of hardware contexts, this wasn't a problem
    because flushing the batch forced all state to be re-emitted).
    
    This patch fixes the problem by leaving the dirty bits set at the end
    of brw_upload_state(); we only clear them after we have determined
    that we don't need to rewind the batch buffer.
    
    Cc: 10.0 9.2 <mesa-stable at lists.freedesktop.org>
    
    Reviewed-by: Eric Anholt <eric at anholt.net>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit fb6d9798a0c6eefd512f5b0f19eed34af8f4f257)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=502d89b260fe33b589b1525e973a9bad41794c0b
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Jan 7 22:00:20 2014 +0100

    st/mesa: use sRGB formats for MSAA resolving if destination is sRGB
    
    Copied from the i965 driver, including the big comment.
    
    Cc: 9.2 10.0 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 4e549ddb500cf677b6fa16d9ebdfa67cc23da097)




More information about the mesa-commit mailing list