Mesa (10.0): 44 new commits

Carl Worth cworth at kemper.freedesktop.org
Tue Mar 11 21:28:35 UTC 2014


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c29c9947a3dfabd67f7a8b803cd072d75e659c59
Author: Carl Worth <cworth at cworth.org>
Date:   Mon Mar 10 15:39:06 2014 -0700

    get-pick-list: Update to only find patches nominated for the 10.0 branch
    
    In early February, the 10.1 branch was created. From then on, patches that
    don't specifically say "10.0" are intended for 10.1, not 10.0.

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=518526700ed7ab58067cd7d7e0ab9739895314d4
Author: Hans <hans at chromium.org>
Date:   Sat Mar 1 11:28:18 2014 -0700

    mesa: don't define c99 math functions for MSVC >= 1800
    
    Signed-off-by: Brian Paul <brianp at vmware.com>
    Cc: "10.0" "10.1" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 837da9bdaec2b4496c6d25ea0379f8c2996ed697)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f9e7f63945f2ace1c3a50d8618864a861ff64e0
Author: Hans <hans at chromium.org>
Date:   Sat Mar 1 11:26:09 2014 -0700

    util: don't define isfinite(), isnan() for MSVC >= 1800
    
    Signed-off-by: Brian Paul <brianp at vmware.com>
    Cc: "10.0" "10.1" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit bf2566032589e0c46dbd4ddef0d75d354d2a16b5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9cdb86a1dabd533d5d1f96da172bd2f978f7fe9c
Author: Brian Paul <brianp at vmware.com>
Date:   Sat Mar 1 12:14:15 2014 -0700

    softpipe: use 64-bit arithmetic in softpipe_resource_layout()
    
    To avoid 32-bit integer overflow for large textures.  Note: we're
    already doing this in llvmpipe.
    
    Cc: "10.0" "10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Roland Scheidegger <sroland at vmware.com>
    (cherry picked from commit 465b2c42bca59f0f198aeb8543cfabd5989584b4)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4588a32dee58c47c954813c74d471f893d14872c
Author: Julien Cristau <jcristau at debian.org>
Date:   Sat Mar 1 10:11:11 2014 +0100

    glx/dri2: fix build failure on HURD
    
    Patch from Debian package.
    
    Cc: "10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 6f0e2731e862d1c2d8d21927040bead5049a2d68)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aba40445c25d01026ce29baabf2e4b24e176a55e
Author: Chris Forbes <chrisf at ijw.co.nz>
Date:   Sat Feb 22 18:09:31 2014 +1300

    i965: Validate (and resolve) all the bound textures.
    
    BRW_MAX_TEX_UNIT is the static limit on the number of textures we
    support per-stage, not in total.
    
    Core's `Unit` array is sized by MAX_COMBINED_TEXTURE_IMAGE_UNITS, which
    is significantly larger, and across the various shader stages, up to
    ctx->Const.MaxCombinedTextureImageUnits elements of it may be actually
    used.
    
    Fixes invisible bad behavior in piglit's max-samplers test (although
    this escalated to an assertion failure on HSW with texture_view, since
    non-immutable textures only have _Format set by validation.)
    
    Signed-off-by: Chris Forbes <chrisf at ijw.co.nz>
    Cc: "9.2 10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Cc: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    (cherry picked from commit befbda56a246f77797bdf13fc005353441db2879)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6a81f2bc9b024c33fbcb15ea2215dd407dea8c9c
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Sat Feb 22 03:04:02 2014 +0000

    dri/i9*5: correctly calculate the amount of system memory
    
    The variable name states megabytes, while we calculate the amount in
    kilobytes. Correct this by dividing with the correct amount.
    
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    Cc: "10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit fc25956badb8e1932cc19d8c97b4be16e92dfc65)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a02c50ef4e9fa1d2bbb5d8ef05ef67b9d74ed075
Author: Tom Stellard <thomas.stellard at amd.com>
Date:   Mon Feb 24 16:51:05 2014 -0500

    r600g/compute: PIPE_CAP_COMPUTE should be false for pre-evergreen GPUs
    
    This prevents clover from using unsupported devices.
    
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
    
    CC: "10.0 10.1" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit f61e382f0afc48bc09f21c50639f760acca85bc5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=af1831d0035363a0d1a127d44309a37e8d3930c1
Author: Brian Paul <brianp at vmware.com>
Date:   Thu Feb 27 08:36:13 2014 -0700

    mesa: do depth/stencil format conversion in glGetTexImage
    
    glGetTexImage(GL_DEPTH_STENCIL, GL_UNSIGNED_INT_24_8) was just
    using memcpy() instead of _mesa_unpack_uint_24_8_depth_stencil_row()
    to convert texels from the hardware format to the GL format.
    
    Fixes issue reported by David Meng at Intel.  The new piglit
    ext_packed_depth_stencil-getteximage test checks for this bug.
    
    Also, add some format/type assertions.  We don't yet handle the
    GL_FLOAT_32_UNSIGNED_INT_24_8_REV type.  That should be fixed in
    a follow-on patch.
    
    Reviewed-by: Eric Anholt <eric at anholt.net>
    Cc: "10.0" "10.1" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 43dee0295e5da42425f1a3b6a3b3108173f4b676)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=59ab5bf0a078836e5e1d4b0ff0e8f36bcfb033fe
Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Tue Jan 7 17:46:45 2014 -0800

    i965: Fix the region's pitch condition to use blitter
    
    intelEmitCopyBlit uses a signed 16-bit integer to represent
    buffer pitch, so it can only handle buffer pitches < 32k.
    
    Cc: mesa-stable at lists.freedesktop.org
    Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit b3094d9927fe7aa5a84892262404aaad4d728724)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=85e04ad280f4fc7dc67cbf072244f74089964a99
Author: Fredrik Höglund <fredrik at kde.org>
Date:   Sat Feb 15 18:48:40 2014 +0100

    glx: Fix the GLXFBConfig attrib sort priorities
    
    The sort priorites for GLX_SAMPLES and GLX_SAMPLE_BUFFERS are
    not defined in GL_ARB_multisample, but they are defined in
    the GLX 1.4 specification.
    
    Cc: "9.2 10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 3616e862f29838d73fcb05134b1dc628da499fc2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b2cf05192eafea5f8b7c895a7202628b43ef78b
Author: Fredrik Höglund <fredrik at kde.org>
Date:   Thu Feb 13 21:07:09 2014 +0100

    glx: Fix the default values for GLXFBConfig attributes
    
    The default values for GLX_DRAWABLE_TYPE and GLX_RENDER_TYPE are
    GLX_WINDOW_BIT and GLX_RGBA_BIT respectively, as specified in
    the GLX 1.4 specification.
    
    This fixes the glx-choosefbconfig-defaults piglit test.
    
    Cc: "9.2 10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit f41c2f6c332ae9b9784ac924b718963a1086cb85)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3fc389efeb5b1ea55dcab50a927877c88e13976e
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Mon Feb 24 16:46:19 2014 +0000

    nv50: correctly calculate the number of vertical blocks during transfer map
    
    Cc: "10.0 10.1" <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 882070cc81588a133d81e3ef8790d7375f494eff)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bab122c320d2aae28c9e3416f0a5f6f7a80d2f49
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Wed Feb 19 17:20:11 2014 -0800

    i965: Create a hardware context before initializing state module.
    
    brw_init_state() calls brw_upload_initial_gpu_state().  If hardware
    contexts are enabled (brw->hw_ctx != NULL), this will upload some
    initial invariant state for the GPU.  Without hardware contexts, we
    rely on this state being uploaded via atoms that subscribe to the
    BRW_NEW_CONTEXT bit.
    
    Commit 46d3c2bf4ddd227193b98861f1e632498fe547d8 accidentally moved
    the call to brw_init_state() before creating a hardware context.
    This meant brw_upload_initial_gpu_state would always early return.
    Except on Gen6+, we stopped uploading the initial GPU state via
    state atoms, so it never happened.
    
    Fixes a regression since 46d3c2bf4ddd227193b98861f1e632498fe547d8.
    
    Cc: "10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Eric Anholt <eric at anholt.net>
    (cherry picked from commit 3663bbe773187dee341556ef29e58b1143ef2f5c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=cf7daac48337f9a39a5651943342d72688894abf
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Feb 18 09:36:08 2014 -0800

    glsl: Only warn for macro names containing __
    
    From page 14 (page 20 of the PDF) of the GLSL 1.10 spec:
    
        "In addition, all identifiers containing two consecutive underscores
         (__) are reserved as possible future keywords."
    
    The intention is that names containing __ are reserved for internal use
    by the implementation, and names prefixed with GL_ are reserved for use
    by Khronos.  Names simply containing __ are dangerous to use, but should
    be allowed.
    
    Per the Khronos bug mentioned below, a future version of the GLSL
    specification will clarify this.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Cc: "9.2 10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Tested-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
    Tested-by: Darius Spitznagel <d.spitznagel at goodbytez.de>
    Cc: Tapani Pälli <lemody at gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71870
    Bugzilla: Khronos #11702
    (cherry picked from commit 2c85fd5a964a78c9f7a93994fb79f1723c6f45b5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=de6068a218a2aa77b27eb41e62fd8c785611d839
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Feb 18 09:10:36 2014 -0800

    glcpp: Only warn for macro names containing __
    
    Section 3.3 (Preprocessor) of the GLSL 1.30 spec (and later) and the
    GLSL ES spec (all versions) say:
    
        "All macro names containing two consecutive underscores ( __ ) are
        reserved for future use as predefined macro names. All macro names
        prefixed with "GL_" ("GL" followed by a single underscore) are also
        reserved."
    
    The intention is that names containing __ are reserved for internal use
    by the implementation, and names prefixed with GL_ are reserved for use
    by Khronos.  Since every extension adds a name prefixed with GL_ (i.e.,
    the name of the extension), that should be an error.  Names simply
    containing __ are dangerous to use, but should be allowed.  In similar
    cases, the C++ preprocessor specification says, "no diagnostic is
    required."
    
    Per the Khronos bug mentioned below, a future version of the GLSL
    specification will clarify this.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Cc: "9.2 10.0 10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Tested-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
    Tested-by: Darius Spitznagel <d.spitznagel at goodbytez.de>
    Cc: Tapani Pälli <lemody at gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71870
    Bugzilla: Khronos #11702
    (cherry picked from commit 0bd78926304e72ef3566e977d0cb5a959d86b809)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c074e347453e8452d17e23295f031fff9dab1065
Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Thu Dec 19 14:17:19 2013 -0800

    glsl: Fix condition to generate shader link error
    
    GL_ARB_ES2_compatibility doesn't say anything about shader linking
    when one of the shaders (vertex or fragment shader) is absent. So,
    the extension shouldn't change the behavior specified in GLSL
    specification.
    
    Tested the behavior on proprietary linux drivers of NVIDIA and AMD.
    Both of them allow linking a version 100 shader program in OpenGL
    context, when one of the shaders is absent.
    
    Makes following Khronos CTS tests to pass:
    successfulcompilevert_linkprogram.test
    successfulcompilefrag_linkprogram.test
    
    Cc: mesa-stable at lists.freedesktop.org
    Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 03597cf802a7a89c4853794e6206ab8ab003898d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=00d1daf2a85d84a208e438c26bec33fbac2d6089
Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Fri Feb 14 17:27:29 2014 -0800

    mesa: Add GL_TEXTURE_CUBE_MAP_ARRAY to legal_get_tex_level_parameter_target()
    
    Fixes failing Khronos CTS test packed_depth_stencil_init.test
    
    Cc: <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 6bd2472a8b9a969d06dc110bd30ccd8daf713959)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=09a346a1c1d5757815fc6154e1923c154eca08da
Author: Kusanagi Kouichi <slash at ac.auone-net.jp>
Date:   Wed Feb 12 16:07:55 2014 +0900

    targets/vdpau: Always use c++ to link
    
    If built without llvm, the following error occurs with mplayer:
    
    Failed to open VDPAU backend .../libvdpau_r600.so: undefined symbol: _ZTVN10__cxxabiv117__class_type_infoE
    [vo/vdpau] Error when calling vdp_device_create_x11: 1
    
    Cc: <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Kusanagi Kouichi <slash at ac.auone-net.jp>
    Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com>
    (cherry picked from commit 61f6cddef72a49d87e2b31ed49cdbc941d3b1efc)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5202312160347dab4c8514859ff5c2f9a7bfad79
Author: Carl Worth <cworth at cworth.org>
Date:   Thu Feb 13 09:49:27 2014 -0800

    main: Avoid double-free of shader Label
    
    As documented, the _mesa_free_shader_program_data function:
    
    	"Frees all the data that hangs off a shader program object, but not
    	the object itself."
    
    This means that this function may be called multiple times on the same object,
    (and has been observed to). Meanwhile, the shProg->Label field was not being
    set to NULL after its free(). This led to a second call to free() of the same
    address on the second call to this function.
    
    Fix this by setting this field to NULL after free(), (just as with all other
    calls to free() in this function).
    
    Reviewed-by: Brian Paul <brianp at vmware.com>
    
    CC: mesa-stable at lists.freedesktop.org
    (cherry picked from commit a92581acf2aba5e5e9fa199b778e649d5741754d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6e83e9a7ab1e1d27a90277fe30ca1cb22baa1bc
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Wed Feb 12 18:22:56 2014 -0500

    nouveau: fix chipset checks for nv1a by using the oclass instead
    
    Commit f4ebcd133b9 ("dri/nouveau: NV17_3D class is not available for
    NV1a chipset") fixed this partially by using the correct 3d class.
    However there were a lot of checks left over comparing against the
    chipset.
    
    Reported-and-tested-by: John F. Godfrey <jfgodfrey at gmail.com>
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Cc: 9.2 10.0 10.1 <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Francisco Jerez <currojerez at riseup.net>
    (cherry picked from commit 0c8b165366d68291e3013c7308b8b1fdd5ade2a2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=ad54c842fad754803a3499fffde9b9139a906da3
Author: Fredrik Höglund <fredrik at kde.org>
Date:   Fri Feb 7 20:34:08 2014 +0100

    mesa: Preserve the NewArrays state when copying a VAO
    
    Cc: "10.1" "10.0" <mesa-stable at lists.freedesktop.org>
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=72895
    Reviewed-by: Brian Paul <brianp at vmware.com>
    (cherry picked from commit 9afbd04d892f96e7fc6b689ca57ea5da124f7560)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a4719eff1af9e459a0714c1932f49ab4451bcdb5
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Sat Jan 25 15:23:41 2014 +0000

    dri/nouveau: Pass the API into _mesa_initialize_context
    
    Currently we create a OPENGL_COMPAT context regardless of
    what was requested by the program. Correct that by retaining
    the program's request and passing it into _mesa_initialize_context.
    
    Based on a similar commit for radeon/r200 by Ian Romanick.
    
    Cc: "9.1 9.2 10.0" <mesa-stable at lists.freedesktop.org>
    Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
    (cherry picked from commit 76d9f6d9729db1c999317a6b44818aa90c30a0b3)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f35078700b24cdead1e8f9372fdb14e748c05bc
Author: Daniel Kurtz <djkurtz at chromium.org>
Date:   Fri Feb 7 19:29:06 2014 +0800

    glsl: Add locking to builtin_builder singleton
    
    Consider a multithreaded program with two contexts A and B, and the
    following scenario:
    
    1. Context A calls initialize(), which allocates mem_ctx and starts
       building built-ins.
    2. Context B calls initialize(), which sees mem_ctx != NULL and assumes
       everything is already set up.  It returns.
    3. Context B calls find(), which fails to find the built-in since it
       hasn't been created yet.
    4. Context A finally finishes initializing the built-ins.
    
    This will break at step 3.  Adding a lock ensures that subsequent
    callers of initialize() will wait until initialization is actually
    complete.
    
    Similarly, if any thread calls release while another thread is still
    initializing, or calling find(), the mem_ctx/shader would get free'd while
    from under it, leading to corruption or use-after-free crashes.
    
    Fixes sporadic failures in Piglit's glx-multithread-shader-compile.
    
    Bugzilla: https://bugs.freedesktop.org/69200
    Signed-off-by: Daniel Kurtz <djkurtz at chromium.org>
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Cc: "10.1 10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit b47d231526821f5cff99546a984103a7222bc66c)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aa1f7b42379b7574f06d0df2cee3e4d9f54e1ccf
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Sat Feb 8 15:22:46 2014 -0500

    nouveau/video: make sure that firmware is present when checking caps
    
    Apparently some players are ill-prepared for us claiming that a decoder
    exists only to have creating it fail, and express this poor preparation
    with crashes (e.g. flash). Check that firmware is there to increase the
    chances of there being a high correlation between reported capabilities
    and ability to create a decoder.
    
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Cc: 10.0 10.1 <mesa-stable at lists.freedesktop.org>
    Tested-by: Emil Velikov <emil.l.velikov at gmail.com>
    (cherry picked from commit 40dd777b3307301e6580c5757c322a2ec99b5b37)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d141825eff4addb69a605e76a5c758ab3d8ce055
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Wed Jan 29 12:36:13 2014 -0500

    nv30: report 8 maximum inputs
    
    nvfx_fragprog_assign_generic only allows for up to 10/8 texcoords for
    nv40/nv30. This fixes compilation of the varying-packing tests.
    Furthermore it appears that the last 2 inputs on nv4x don't seem to
    work in those tests, so just report 8 everywhere for now.
    
    Tested on NV42, NV44. NV4B appears to have additional problems.
    
    Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
    Cc: 9.1 9.2 10.0 10.1 <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 356aff3a5c08be055d6befff99a72f5551b3ac2d)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d13adcae22bf624bd34b28a212b107746f64141c
Author: Brian Paul <brianp at vmware.com>
Date:   Sat Feb 8 13:39:45 2014 -0700

    mesa: update assertion in detach_shader() for geom shaders
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74723
    Cc: "10.0" "10.1" <mesa-stable at lists.freedesktop.org>
    Tested-by: Andreas Boll <andreas.boll.dev at gmail.com>
    (cherry picked from commit c325ec896545cc909f2f0e359f0bb0513a8a53b5)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e91dd3661cfc10c0dc2d7da7156cbe78c9d2a1c0
Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Wed Feb 5 21:42:00 2014 -0800

    glsl: Don't lose precision qualifiers when encountering "centroid".
    
    Mesa fails to retain the precision qualifier when parsing:
    
       #version 300 es
       centroid in mediump vec2 v;
    
    Consider how the parser's type_qualifier production is applied.
    First, the precision_qualifier rule creates a new ast_type_qualifier:
    
        <precision: mediump>
    
    Then the storage_qualifier rule creates a second one:
    
        <flags: in>
    
    and calls merge_qualifier() to fold in any previous qualifications,
    returning:
    
        <flags: in, precision: mediump>
    
    Finally, the auxiliary_storage_qualifier creates one for "centroid":
    
        <flags: centroid>
    
    it then does $$ = $1 and $$.flags |= $2.flags, resulting in:
    
        <flags: centroid, in>
    
    Since precision isn't stored in the flags bitfield, it is lost.  We need
    to instead call merge_qualifier to combine all the fields.
    
    Cc: mesa-stable at lists.freedesktop.org
    Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
    Reported-by: Kevin Rogovin <kevin.rogovin at intel.com>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 2062f40d81de4743758851b03dad506f9cb6f306)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=490b810d0ee385695aff7031b83785f01955f53a
Author: Brian Paul <brianp at vmware.com>
Date:   Fri Feb 7 09:32:05 2014 -0700

    st/mesa: avoid sw fallback for getting/decompressing textures
    
    If st_GetTexImage() is to decompress the texture, avoid the fallback
    path even if prefer_blit_based_texture_transfer = false.  For drivers
    that returned PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER = 0, we
    were always taking the fallback path for texture decompression rather
    than rendering a quad.  The later is a lot faster.
    
    Cc: "10.0" "10.1" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Marek Olšák <marek.olsak at amd.com>
    (cherry picked from commit f47e5962885d9f7de23a8c9c9ba035017e24ffd6)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d37086c6fc2b47703ee89fd2eaf94ad51dccf52e
Author: Matt Turner <mattst88 at gmail.com>
Date:   Mon Feb 3 11:51:51 2014 -0800

    glsl: Initialize ubo_binding_mask flags to zero.
    
    Missed in commit e63bb298. Caused sporadic test failures, like
    incorrect-in-layout-qualifier-repeated-prim.geom.
    
    Cc: "10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
    (cherry picked from commit e2ef93cf94ee553e5de70a7c26fd0724d967d0b2)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=cfd8aed240583295374840f29d3f627c50e97216
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Feb 6 02:16:50 2014 +0100

    st/mesa: fix crash when a shader uses a TBO and it's not bound
    
    This binds a NULL sampler view in that case.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74251
    
    Cc: "10.1" "10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Brian Paul <brianp at vmware.com>
    (cherry picked from commit c6dbcf10dff1f8343a26081f5489ef732ebb5460)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1b6aec4b5ab9441f979f6eae4d56787e7483cc39
Author: Paul Berry <stereotype441 at gmail.com>
Date:   Fri Jan 31 09:55:35 2014 -0800

    glsl: Fix continue statements in do-while loops.
    
    From the GLSL 4.40 spec, section 6.4 (Jumps):
    
        The continue jump is used only in loops. It skips the remainder of
        the body of the inner most loop of which it is inside. For while
        and do-while loops, this jump is to the next evaluation of the
        loop condition-expression from which the loop continues as
        previously defined.
    
    Previously, we incorrectly treated a "continue" statement as jumping
    to the top of a do-while loop.
    
    This patch fixes the problem by replicating the loop condition when
    converting the "continue" statement to IR.  (We already do a similar
    thing in "for" loops, to ensure that "continue" causes the loop
    expression to be executed).
    
    Fixes piglit tests:
    - glsl-fs-continue-inside-do-while.shader_test
    - glsl-vs-continue-inside-do-while.shader_test
    - glsl-fs-continue-in-switch-in-do-while.shader_test
    - glsl-vs-continue-in-switch-in-do-while.shader_test
    
    Cc: mesa-stable at lists.freedesktop.org
    
    Acked-by: Carl Worth <cworth at cworth.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    (cherry picked from commit 7f5740899fe8ee2d7fecebf1b9622e06dbc78f43)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6d6bdd88e708820653312edda85f536c590a669c
Author: Paul Berry <stereotype441 at gmail.com>
Date:   Fri Jan 31 09:50:37 2014 -0800

    glsl: Make condition_to_hir() callable from outside ast_iteration_statement.
    
    In addition to making it public, we also need to change its first
    argument from an ir_loop * to an exec_list *, so that it can be used
    to insert the condition anywhere in the IR (rather than just in the
    body of the loop).
    
    This will be necessary in order to make continue statements work
    properly in do-while loops.
    
    Cc: mesa-stable at lists.freedesktop.org
    
    Acked-by: Carl Worth <cworth at cworth.org>
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Matt Turner <mattst88 at gmail.com>
    (cherry picked from commit 56790856b303ad5ba86d7eb261ade91edaa3ee0b)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2a1918695373a8306deac2a55d6f10492ceb775a
Author: Topi Pohjolainen <topi.pohjolainen at intel.com>
Date:   Mon Jan 27 10:50:01 2014 +0200

    i965/blorp: do not use unnecessary hw-blending support
    
    This is really not needed as blorp blit programs already sample
    XRGB normally and get alpha channel set to 1.0 automatically by
    the sampler engine. This is simply copied directly to the payload
    of the render target write message and hence there is no need for
    any additional blending support from the pixel processing pipeline.
    
    The blending formula is anyway broken for color components, it
    multiplies the color component with itself (blend factor is the
    component itself).
    Alpha blending in turn would not fix the alpha to one independent
    of the source but simply used the source alpha as is instead
    (1.0 * src_alpha + 0.0 * dst_alpha).
    
    Quoting Eric:
    
     "If we want to actually make the no-alpha-bits-present thing work,
      we need to override the bits in the surface state or in the
      generated code.  In the normal draw path, it's done for sampling
      by the swizzling code in brw_wm_surface_state.c, and the blending
      overrides is just to fix up the alpha blending stage which
      doesn't pay attention to that for the destination surface."
    
    If one modifies piglit test gl-3.2-layered-rendering-blit to use
    color component values other than zero or one, this change will
    kick in on IVB. No regressions on IVB.
    
    This is effectively revert of c0554141a9b831b4e614747104dcbbe0fe489b9d:
    
        i965/blorp: Support overriding destination alpha to 1.0.
    
        Currently, Blorp requires the source and destination formats to be
        equal.  However, we'd really like to be able to blit between XRGB and
        ARGB formats; our BLT engine paths have supported this for a long time.
    
        For ARGB -> XRGB, nothing needs to occur: the missing alpha is already
        interpreted as 1.0.  For XRGB -> ARGB, we need to smash the alpha
        channel to 1.0 when writing the destination colors.  This is fairly
        straightforward with blending.
    
        For now, this code is never used, as the source and destination formats
        still must be equal.  The next patch will relax that restriction.
    
        NOTE: This is a candidate for the 9.1 branch.
    
    Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
    Reviewed-by: Eric Anholt <eric at anholt.net>
    Signed-off-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
    (cherry picked from commit 933be19cdf97aed977cd656e5c15c99cbdb52b7f)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=dc0053b33f5bd95965c1820d814edc2ab6d8b5c9
Author: Christian König <christian.koenig at amd.com>
Date:   Mon Feb 3 02:28:58 2014 -0700

    radeon/uvd: fix feedback buffer handling v2
    
    Without the correct feedback buffer size UVD runs
    into an error on each frame, reducing the maximum FPS.
    
    v2: fixing Michels comments
    
    Signed-off-by: Christian König <christian.koenig at amd.com>
    Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>
    Cc: "10.1" "10.0" "9.2" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit c3c24c3accd1401cbe96098e44850bb1130d80b9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e70e368af51a861c646a351d6d61b4fdf7253e89
Author: Brian Paul <brianp at vmware.com>
Date:   Mon Feb 3 11:33:03 2014 -0700

    draw: fix incorrect color of flat-shaded clipped lines
    
    When we clipped a line weren't copying the provoking vertex
    color to the second vertex.  We also weren't checking for
    first vs. last provoking vertex.
    
    Fixes failures found with the new piglit line-flat-clip-color test.
    
    Cc: "10.0, 10.1" <mesa-stable at lists.freedesktop.org>
    
    Reviewed-by: Jose Fonseca <jfonseca at vmware.com>
    (cherry picked from commit fc3fcd1e01093e8ab8d06d95c53f875ace57ca7f)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e10b0e0f50e65e59305bc93e649b0db5bc0276ac
Author: Brian Paul <brianp at vmware.com>
Date:   Fri Jan 31 17:27:04 2014 -0700

    gallium/auxiliary/indices: replace free() with FREE()
    
    To match the CALLOC_STRUCT() call.
    
    Cc: "10.0, 10.1" <mesa-stable at lists.freedesktop.org>
    
    Reviewed-by: Jose Fonseca <jfonseca at vmware.com>
    (cherry picked from commit 307fd76053da39242ada2701b0d32b2177fe3493)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b74da80b71ae9799ba06cfcfdcd3307db3fb2208
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Sat Dec 14 11:27:29 2013 -0800

    meta: Consistenly use non-Apple VAO functions
    
    For these objects, meta was already using the non-Apple function to
    delete the objects.  Everywhere else in the file uses
    _mesa_GenVertexArrays and _mesa_BindVertexArrays.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Brian Paul <brianp at vmware.com>
    Cc: "9.1 9.2 10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit abfa65ca811099332c8683dada9a2ee44cc01dc9)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=89c6473ff0890b84f1400b9cd6f31146b75a7f4c
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Fri Dec 13 15:59:38 2013 -0800

    meta: Fallback to software for GetTexImage of compressed GL_TEXTURE_CUBE_MAP_ARRAY
    
    The hardware decompression path isn't even close to being able to handle
    this.  This converts the crash (assertion failure) in
    "EXT_texture_compression_s3tc/getteximage-targets S3TC CUBE_ARRAY" to a
    plain old failure.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Brian Paul <brianp at vmware.com>
    Cc: "9.1 9.2 10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 070f55d8935af6fee62506b54bc86c1bf5049a82)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a4a8af4cbbe726ac00147e30310c1f84c92533bb
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Sat Dec 14 11:58:45 2013 -0800

    meta: Release resources used by _mesa_meta_DrawPixels
    
    _mesa_meta_DrawPixels creates a VAO and (potentially) two fragment
    programs, but none of them are ever released.  Leaking piles of memory
    is generally frowned upon.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Brian Paul <brianp at vmware.com>
    Cc: "9.1 9.2 10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit fcb498302bff912ca4f3169d37cc04b58e77d0fa)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c1bcdcde1c7e0c369f2cc4b4d7e56e9c3ea6707f
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Fri Dec 13 14:36:17 2013 -0800

    meta: Release resources used by decompress_texture_image
    
    decompress_texture_image creates an FBO, an RBO, a VBO, a VAO, and a
    sampler object, but none of them are ever released.  Later patches will
    add program objects, exacerbating the problem.  Leaking piles of memory
    is generally frowned upon.
    
    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Brian Paul <brianp at vmware.com>
    Cc: "9.1 9.2 10.0" <mesa-stable at lists.freedesktop.org>
    (cherry picked from commit 2d3f92e881dbd9d1aff17bba0d182c8ef645a2ca)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d18b18213416ba891885332e17eca523fafa6d6b
Author: Brian Paul <brianp at vmware.com>
Date:   Fri Jan 31 17:09:44 2014 -0700

    radeon: move driContextSetFlags(ctx) call after ctx var is initialized
    
    CC: "10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
    (cherry picked from commit f51ca46f0c7c3b87b62f6047b266faeffbaae619)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5297fdc0c814badb0f86d312823ebf35c75adf54
Author: Brian Paul <brianp at vmware.com>
Date:   Fri Jan 31 17:09:44 2014 -0700

    r200: move driContextSetFlags(ctx) call after ctx var is initialized
    
    Otherwise, ctx was a garbage value.
    
    CC: "10.0" <mesa-stable at lists.freedesktop.org>
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
    (cherry picked from commit 2d6d69bab6c74d92514b81a68c6c8b1dc428182a)

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=edf066f3851a25f1cec562d8bde80d290291703a
Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Mon Jan 27 17:23:32 2014 -0800

    mesa: Generate correct error code in glDrawBuffers()
    
    OpenGL 3.3 spec expects GL_INVALID_OPERATION:
     "For both the default framebuffer and framebuffer objects, the
      constants FRONT, BACK, LEFT, RIGHT, and FRONT AND BACK are not
      valid in the bufs array passed to DrawBuffers, and will result
      in the error INVALID OPERATION."
    
    But OpenGL 4.0 spec changed the error code to GL_INVALID_ENUM:
     "For both the default framebuffer and framebuffer objects, the
      constants FRONT, BACK, LEFT, RIGHT, and FRONT_AND_BACK are not
      valid in the bufs array passed to DrawBuffers, and will result
      in the error INVALID_ENUM."
    
    This patch changes the behaviour to match OpenGL 4.0 spec
    Fixes Khronos OpenGL CTS draw_buffers_api.test.
    
    V2: Update the comment in code.
    
    Cc: mesa-stable at lists.freedesktop.org
    Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
    Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
    (cherry picked from commit 33034755583edfb7c5b773b8e38a9dfa8d317821)




More information about the mesa-commit mailing list