Bug 33203

Summary: firefox4 segfault in swrastPutImage() (pdraw->psc==NULL) [Gallium 0.4 on llvmpipe]
Product: Mesa Reporter: Thierry Vignaud <thierry.vignaud>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: medium CC: bugs.freedesktop, sa
Version: 7.10   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 37253    
Attachments: GDB trace

Description Thierry Vignaud 2011-01-17 06:01:34 UTC
Created attachment 42119 [details]
GDB trace

Description of problem:
firefox4 crashes in mesa-7.10 with kernel-2.6.37 with nouveau driver (but in soft rastering code)
Soft rendering was forced by running firefox with another user that has no access to /dev/dri/card0.

Version-Release number of selected component (if applicable):
Tested on Fedora with:
mesa-dri-drivers-7.10-0.18.fc15.x86_64
firefox-4.0-0.17.beta9.fc14.remi.x86_64
kernel-2.6.37-2.fc15.x86_64
This is mesa snapshot from 2011-01-07.

How reproducible:
Always

Steps to Reproduce:
1. Set 'layers.acceleration.force-enabled' to true and 'layers.acceleration.disabled' to false in firefox4 (using about:config)
2. restart firefox
3. firefox prints "failed to create drawable" thenl segfaults in mesa 
  
Actual results:
Segfault

Expected results:
soft rasterizer should not make firefox segfault

Additional info:
See attached GDB trace

# /usr/lib64/mesa/glinfo |egrep 'RENDERER|VENDOR|VERSION'
[a@pt-tvignaud ~]$ /usr/lib64/mesa/glinfo |egrep 'RENDERER|VENDOR|VERSION'
GL_VERSION: 2.1 Mesa 7.10-devel
GL_RENDERER: Gallium 0.4 on llvmpipe
GL_VENDOR: VMware, Inc.
GLU_VERSION: 1.3
GLUT_API_VERSION: 4
Comment 1 Jakob Bornecrantz 2011-01-17 06:18:18 UTC
Can you try Attacment #40689 [1] in bug 31940 [2].

Cheers Jakob.

[1] https://bugs.freedesktop.org/attachment.cgi?id=40689
[2] https://bugs.freedesktop.org/show_bug.cgi?id=31940
Comment 2 Thierry Vignaud 2011-01-17 09:29:52 UTC
It didn't helped at all
Comment 3 Karl Tomlinson 2011-06-21 17:50:51 UTC
It seems this was related to Gecko destroying the GLXContext, GLXPixmap, and underlying Pixmap while the GLXContext was still current.

Gecko now does glXMakeCurrent with drawable set to None and ctx set to NULL to avoid this.

I'm not clear whether or not destroying the underlying drawable while its related context is still current is reasonable, but it seems the appropriate error would be GLXBadCurrentDrawable.  Discussion starts about here:
https://bugzilla.mozilla.org/show_bug.cgi?id=659842#c47
Comment 4 Sven Arvidsson 2011-06-24 10:04:41 UTC
*** Bug 33204 has been marked as a duplicate of this bug. ***
Comment 5 Thierry Vignaud 2013-11-15 17:53:28 UTC
I'm closing that one as fixed as I don't have the hardware anymore and there's maybe a fix...

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.