Bug 100391

Summary: SachaWillems deferredmultisampling asserts
Product: Mesa Reporter: Grazvydas Ignotas <notasas>
Component: Drivers/Vulkan/intelAssignee: Intel 3D Bugs Mailing List <intel-3d-bugs>
Status: RESOLVED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: normal    
Priority: medium CC: jason
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: INTEL_DEBUG=wm output

Description Grazvydas Ignotas 2017-03-25 15:49:16 UTC
Created attachment 130455 [details]
INTEL_DEBUG=wm output

deferredmultisampling: compiler/brw_fs_generator.cpp:2107: int fs_generator::generate_code(const cfg_t*, int): Assertion `validated' failed.

There are "ERROR: src0 is null" messages when run with INTEL_DEBUG=wm. If I comment the assert out, the demo runs seemingly correctly (matches radv at least), and I see no problems reported by validation layers.

HW: SKL GT2
Mesa git version: 641f629536c2da
Comment 1 Jason Ekstrand 2017-03-29 22:23:08 UTC
Thanks for the report!  I've got a patch to fix this on the mailing list.
Comment 2 Jason Ekstrand 2017-04-05 01:56:15 UTC
This has been fixed by the following commit in master:

commit 3503b2714b98684a2ceba5f4fd9a5bfbfbcaad38
Author: Jason Ekstrand <jason.ekstrand@intel.com>
Date:   Wed Mar 29 15:16:15 2017 -0700

    i965/fs: Always provide a default LOD of 0 for TXS and TXL
    
    We already provide a default LOD for textureQueryLevels and texture() on
    non-fragment stages.  However, there are more cases where one is needed
    such as textureSize(gsampler2DMS*) in SPIR-V.  Instead of trying to list
    out all of the cases one at a time, just provide the default for all TXS
    and TXL operations.  This fixes a shader validation error in the new
    Sascha deferredmultisampling demo which uses textureSize(gsampler2DMS).
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100391
    Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
    Cc: "13.0 17.0" <mesa-stable@lists.freedesktop.org>

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.