Bug 103942

Summary: KHR-GL46.enhanced_layouts.varying* regression
Product: Mesa Reporter: Mark Janes <mark.a.janes>
Component: Drivers/DRI/i965Assignee: Marek Olšák <maraeo>
Status: RESOLVED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: normal    
Priority: medium CC: idr
Version: git   
Hardware: x86-64 (AMD64)   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Mark Janes 2017-11-27 16:17:03 UTC
Bisected to:

78942e7dbfd234ce080b2773b9317a61deb77788
Author:     Marek Olšák <maraeo@gmail.com>

mesa: shrink VERT_ATTRIB bitfields to 32 bits

There are only 32 vertex attribs now.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>


Failing tests:
KHR-GL46.enhanced_layouts.varying_array_locations 
KHR-GL46.enhanced_layouts.varying_locations 
KHR-GL46.enhanced_layouts.varying_structure_locations 

Sample test results:
KHR-GL46.enhanced_layouts.varying_array_locations
R32UI[0]:0
FAILURE. Test case: dmat2x3. Draw - invalid results.
Test case (dmat2x3) failed.
...

Fails on all platforms that support the test
Comment 1 Juan A. Suarez 2017-11-29 11:16:49 UTC
commit 6d540aa092d5d78dde643af40257444567bf7b95
Author: Juan A. Suarez Romero <jasuarez@igalia.com>
Date:   Wed Nov 29 12:09:47 2017 +0100

    mesa: deal with vs_inputs as 64-bit unsigned integer
    
    Commit 78942e ("mesa: shrink VERT_ATTRIB bitfields to 32 bits") uses
    vs_prog_data->vs_inputs as if it were a 32-bit unsigned integer.
    
    But actually it is a 64-bit integer, and as such it is used in other
    parts of Mesa code. It is worth to note that bits from the entire range
    are used, and not only 32-bits. This is due our implementation for
    handling 64-bit dual-slot input attributes, which requires to use a
    larger bitfield to manage them.
    
    This commit reverts the changes done in brw_draw_upload.c, keeping the
    rest of the changes.
    
    This fixes the following tests:
    
    - KHR-GL45.enhanced_layouts.varying_array_locations
    - KHR-GL45.enhanced_layouts.varying_locations
    
    Fixes: 78942e ("mesa: shrink VERT_ATTRIB bitfields to 32 bits")
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103942
    CC: Marek Olšák <marek.olsak@amd.com>
    CC: Ian Romanick <ian.d.romanick@intel.com>
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
    Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>

 src/mesa/drivers/dri/i965/brw_draw_upload.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.