Bug 41613

Summary: [r300g] Latest Mesa breaks Wine - "Bad vertex format"
Product: Mesa Reporter: Chris Rankin <rankincj>
Component: Drivers/Gallium/r300Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: medium    
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Chris Rankin 2011-10-09 07:24:52 UTC
Trying to run Wine against the latest Mesa causes this error message:

r300: Bad vertex format r32g32b32a32_sint.
err:module:attach_process_dlls "opengl32.dll" failed to initialize, aborting
err:module:LdrInitializeThunk Main exe initialization for L"H:\\World of Warcraft\\Wow.exe" failed, status 80000101

The following commit seems to be responsible:

commit 4e28e6f6c777841b9ffe7a7ad1e865e2595f70f9
Author: Dave Airlie <airlied@redhat.com>
Date:   Mon Sep 26 19:05:18 2011 +0100

    u_blitter: add integer clear support
    
    We need add a new set of fragment shader variants, along with new vertex
    elements for signed and unsigned clears.
    
    The new fragment shader variants are due to the integers values requiring
    CONSTANT interpolation. The new vertex element descriptions are for passing
    the clear color as an unsigned or signed integer value.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
Comment 1 Chris Rankin 2011-10-09 07:25:22 UTC
This is with a RV350 graphics card.
Comment 2 Dave Airlie 2011-10-09 08:37:53 UTC
please test with master again,

thanks.
Comment 3 Chris Rankin 2011-10-09 11:48:11 UTC
(In reply to comment #2)
> please test with master again,

Yes, this commit seems to fix it:

commit dd20256a1c1566f11e1fa970028f3bb4f05445b7
Author: Dave Airlie <airlied@redhat.com>
Date:   Sun Oct 9 16:35:28 2011 +0100

    u_blitter: don't create integer vertex elements unless shader supports them
Comment 4 Marek Olšák 2011-10-09 12:24:54 UTC
Alright, closing.

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.