compiz crashed with SIGSEGV in memmove() from drisw_update_tex_buffer() from dri_set_tex_buffer2() from drisw_bind_tex_image() from __glXBindTexImageEXT() from TfpTexture::enable() from enableFragmentOperationsAndDrawGeometry()

Bug #927168 reported by infosolano
This bug affects 126 people
Affects Status Importance Assigned to Milestone
Compiz
Fix Released
Critical
Sam Spilsbury
Compiz Core
Confirmed
Medium
Unassigned
Mesa
New
Unknown
compiz (Ubuntu)
Fix Released
Critical
Unassigned
Quantal
Fix Released
Critical
Unassigned
mesa (Ubuntu)
Confirmed
Wishlist
Unassigned

Bug Description

.

ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: unity 5.2.0-0ubuntu1
ProcVersionSignature: Ubuntu 3.2.0-12.21-generic 3.2.2
Uname: Linux 3.2.0-12-generic i686
ApportVersion: 1.91-0ubuntu1
Architecture: i386
Date: Sun Feb 5 12:47:01 2012
ExecutablePath: /usr/bin/compiz
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha i386 (20111129.1)
ProcCmdline: compiz
ProcEnviron:
 LANGUAGE=pt_BR:pt:en
 PATH=(custom, no user)
 LANG=pt_BR.UTF-8
 SHELL=/bin/bash
SegvAnalysis:
 Segfault happened at: 0x558360: movdqu (%eax),%xmm0
 PC (0x00558360) ok
 source "(%eax)" (0x81577fc0) not located in a known VMA region (needed readable region)!
 destination "%xmm0" ok
SegvReason: reading unknown VMA
Signal: 11
SourcePackage: unity
StacktraceTop:
 ?? () from /lib/i386-linux-gnu/libc.so.6
 ?? () from /usr/lib/i386-linux-gnu/dri/swrast_dri.so
 ?? () from /usr/lib/i386-linux-gnu/dri/swrast_dri.so
 ?? () from /usr/lib/i386-linux-gnu/mesa/libGL.so.1
 ?? () from /usr/lib/i386-linux-gnu/mesa/libGL.so.1
Title: compiz crashed with SIGSEGV
UpgradeStatus: Upgraded to precise on 2012-02-04 (1 days ago)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo

Related branches

Revision history for this message
infosolano (infosolano) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 drisw_update_tex_buffer (drawable=0xad5dee60, ctx=0x9748cc0, res=0xaf712d00) at /usr/include/i386-linux-gnu/bits/string3.h:58
 dri_set_tex_buffer2 (pDRICtx=0x9751610, target=3553, format=8410, dPriv=0xad314358) at dri_drawable.c:230
 drisw_bind_tex_image (dpy=0x96ff058, drawable=18874771, buffer=8414, attrib_list=0x0) at drisw_glx.c:316
 __glXBindTexImageEXT (dpy=0x96ff058, drawable=18874771, buffer=8414, attrib_list=0x0) at glxcmds.c:2429
 TfpTexture::enable (this=0xad522708, filter=GLTexture::Fast) at /build/buildd/compiz-0.9.6+bzr20110929/plugins/opengl/src/texture.cpp:602

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in unity (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
Revision history for this message
Launchpad Janitor (janitor) wrote : Re: compiz crashed with SIGSEGV

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity (Ubuntu):
status: New → Confirmed
Omer Akram (om26er)
visibility: private → public
summary: - compiz crashed with SIGSEGV
+ compiz crashed with SIGSEGV in drisw_update_tex_buffer() from ... from
+ __glXBindTexImageEXT() from TfpTexture::enable() from
+ enableFragmentOperationsAndDrawGeometry()
Omer Akram (om26er)
visibility: public → private
visibility: private → public
affects: unity (Ubuntu) → compiz (Ubuntu)
Changed in compiz-core:
status: New → Confirmed
importance: Undecided → High
Changed in compiz (Ubuntu):
importance: Medium → High
Changed in compiz-core:
milestone: none → 0.9.8.0
Changed in compiz:
importance: Undecided → High
status: New → Confirmed
Changed in compiz:
milestone: none → 0.9.8.0
Changed in compiz-core:
milestone: 0.9.8.0 → none
Revision history for this message
Sam Spilsbury (smspillaz) wrote : Re: compiz crashed with SIGSEGV in drisw_update_tex_buffer() from ... from __glXBindTexImageEXT() from TfpTexture::enable() from enableFragmentOperationsAndDrawGeometry()

Looks like a bug in the software renderer.

Changed in compiz:
status: Confirmed → Invalid
Changed in compiz-core:
status: Confirmed → Invalid
Changed in compiz:
milestone: 0.9.8.0 → none
Changed in compiz (Ubuntu):
status: Confirmed → Invalid
Revision history for this message
Sam Spilsbury (smspillaz) wrote :

(To clarify, NULL is valid for glXBindTexImageEXT)

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

If the bug is in another package then we need to be sure, and then reassign it. It's not helpful to anyone to mark the bug as invalid in all projects.

Changed in compiz:
status: Invalid → Confirmed
Changed in compiz-core:
status: Invalid → Confirmed
Changed in compiz (Ubuntu):
status: Invalid → Confirmed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Although with several potential sources of heap corruption now fixed in Unity 5.12, we might find this bug stops occurring. Fingers crossed.

Changed in compiz:
milestone: none → 0.9.8.0
tags: added: llvmpipe
Changed in mesa (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Seems with the introduction of LLVMpipe support in Ubuntu 12.10, this bug is now happening to a lot more people than it was in 12.04.

summary: - compiz crashed with SIGSEGV in drisw_update_tex_buffer() from ... from
+ compiz crashed with SIGSEGV in memmove() from drisw_update_tex_buffer()
+ from dri_set_tex_buffer2() from drisw_bind_tex_image() from
__glXBindTexImageEXT() from TfpTexture::enable() from
enableFragmentOperationsAndDrawGeometry()
summary: - compiz crashed with SIGSEGV in memmove() from drisw_update_tex_buffer()
+ compiz crashed with SIGSEGV inmemmove() from drisw_update_tex_buffer()
from dri_set_tex_buffer2() from drisw_bind_tex_image() from
__glXBindTexImageEXT() from TfpTexture::enable() from
enableFragmentOperationsAndDrawGeometry()
summary: - compiz crashed with SIGSEGV inmemmove() from drisw_update_tex_buffer()
+ compiz crashed with SIGSEGV in memmove() from drisw_update_tex_buffer()
from dri_set_tex_buffer2() from drisw_bind_tex_image() from
__glXBindTexImageEXT() from TfpTexture::enable() from
enableFragmentOperationsAndDrawGeometry()
Changed in compiz:
milestone: 0.9.8.0 → 0.9.8.1
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Bump priority. I'm seeing a flood of duplicates to this now, from LLVMpipe users (Ubuntu 12.10).

Changed in compiz:
importance: High → Critical
Changed in compiz-core:
importance: High → Critical
Changed in compiz (Ubuntu):
importance: High → Critical
Changed in mesa (Ubuntu):
importance: High → Critical
Revision history for this message
SlugiusRex (slugiusrex) wrote :

Possible work around: Changing screen resolution ??

I first encountered the problem when I was in the process of installing a big pile of
updates using aptitude... (see Bug #1040774)

    Then the UI began behaving all wacky. Everything started flashing
    black every time I moved the mouse. Menus were positioned in the wrong
    places, Could not reposition windows on the UI. It was very difficult
    to see the windows inside the GU layers. This made Quantal practically unusable
    because because it would only correctly respond to about 1% of the mouse clicks.

It turns out that during the upgrade my screen resolution was changed to 3840x1920 ( the first one in the pick list). I run Quantal on VMware® Workstation 8.0.4 build-744019. In the Systems-Settings => Displays I now see 'Laptop' where I used to see 'Unknown'. Perhaps this is the new default.

Anyway after editing the xorg.conf file with nano and setting the display resolution back to 1920 x 1200 - everything seems fine.

Revision history for this message
Jonathan Reed (jdreed) wrote :

I had the same situation described in comment #12, and changing screen resolution, even down to 1024x768, didn't help much. It did reduce the flashing and black screen, but not enough to make it really usable. So I think that reducing screen resolution makes the problem "less bad", not actually better.

That having been said, with the latest (as of Aug 29) updates, the black screen and display artifact issues went away, and when Compiz crashes, Unity manages to restart itself after a short delay, so the machine isn't completely unusable.

Revision history for this message
Jamie Strandboge (jdstrand) wrote :

I filed dupe bug #1043938 and this happens very frequently when closing an application via the 'x' button on the title bar in an up to date 12.10 VM using qemu-kvm.

Revision history for this message
SlugiusRex (slugiusrex) wrote :

Forget what I said in #12 (changing screen resolution didnt stop it - still happening as of Bug #1044454 [unity 6.2.0-0ubuntu4 ; Ubuntu 3.2.0-12.21-generic 3.2.2 ). Although I agree with jdreed in #13 it is way more stable than before.

tags: added: rls-q-incomping
tags: added: rls-q-incoming
removed: rls-q-incomping
Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/927168

tags: added: iso-testing
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

The "flashing and black screen" was bug 1021104. It should be treated separately, although it certainly would have happened on VMs where this bug is happening.

Changed in compiz:
milestone: 0.9.8.2 → 0.9.8.4
Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

As we don't know if the issue is in mesa or compiz, Daniel, Timo, can you work together to figure that out? Thanks!

tags: removed: rls-q-incoming
Changed in mesa (Ubuntu Quantal):
assignee: nobody → Timo Aaltonen (tjaalton)
milestone: none → ubuntu-12.10-beta-2
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

All the readable stacks I have found so far have shown the problem originating from either:
  DecorTexture::DecorTexture
or
  DecorWindow::glDecorate

Changed in compiz:
assignee: nobody → Daniel van Vugt (vanvugt)
status: Confirmed → In Progress
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Assigning to smspillaz. He knows a lot more about the decor texturing which seems to be the problem here.

Changed in compiz:
assignee: Daniel van Vugt (vanvugt) → Sam Spilsbury (smspillaz)
status: In Progress → Triaged
Revision history for this message
Daniel van Vugt (vanvugt) wrote :
Changed in mesa (Ubuntu Quantal):
status: Confirmed → Invalid
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Confirmed in Mesa again. I'm not 100% sure this is only the fault of compiz/decor. I've just reproduced a similar crash with LLVMpipe, but slightly different below drisw_update_tex_buffer.

Changed in mesa (Ubuntu Quantal):
status: Invalid → Confirmed
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

smspillaz:
Would it make sense to keep the pixmap allocation in the decorator, but move all pixmap frees into the decor plugin? That should ensure any pixmap passed to decor is still valid. Assuming that is the problem.

Revision history for this message
Sam Spilsbury (smspillaz) wrote :

Yes, that will work, however we'll need to be careful about not leaking in the decorator in that case. That will probably involve compiz creating a session window as well for the decorator, which isn't a difficult task

Revision history for this message
Sam Spilsbury (smspillaz) wrote :

sorry, leaking the pixmap.

Changed in compiz:
status: Triaged → In Progress
Changed in compiz-core:
milestone: none → 0.9.7.10
importance: Critical → High
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Set to Medium in compiz-core (precise) and Critical in compiz (quantal). That's because almost no one will ever see this bug in precise. LLVMpipe is only widely used in quantal compiz 0.9.8.*

Changed in compiz-core:
importance: High → Medium
Changed in compiz:
status: In Progress → Fix Committed
Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Removing the quantal task, we have a workaround in compiz now.

no longer affects: mesa (Ubuntu Quantal)
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.2 KiB)

This bug was fixed in the package compiz - 1:0.9.8.2+bzr3377-0ubuntu1

---------------
compiz (1:0.9.8.2+bzr3377-0ubuntu1) quantal-proposed; urgency=low

  [ Sam Spilsbury ]
  * debian/python-compizconfig.install
    - Install compizconfig-python.pc
  * debian/patches/100_expo_layout.patch
    - re-add the expo layout that used to be in precise (LP: #1047067)
    - add some testcases

  [ Timo Jyrinki ]
  * New upstream snapshot.
    - Fix multiple window placement bugs (LP: #974242) (LP: #976032)
    - Don't waste CPU looping through and looking at all the windows if you're
      rendering an output that has no damage on it. (LP: #1014986)
    - Updated convert files to fix some typos in the key names. (LP: #1041631)
    - Fix crash when imgsvg is loaded, due to missing symbol
      (decor_apply_gravity from libdecoration). (LP: #956986)
    - Treat unresolved symbols at link time as an error, rather than letting
      them through and cause strange crashes later. (LP: #1043143)
    - Refactors a little bit of the upgrade code and gets it under test to
      prepare to fix (LP: #1042537)
    - Updated AUTHORS from the full bzr log, and re-sort the list.
      (LP: #1042095)
    - Fixes FTBFS for kde4-window-decorator (LP: #1041310)
    - Fix obvious omissions from the introduction of unminimize_*,
      which were causing the unminimize animation settings to be ignored
      (LP: #1040455)
    - resize plugin: don't crash if resize wasn't initiated externally
      (LP: #1045191)
    - Clean up capitalization (LP: #1045652)
    - Avoid division by zero, if plugins try to deform a window down to size
      zero. (LP: #1045235)
    - Make "Unredirect Fullscreen Windows" more reliable. This fixes the
      problem with unredirection failing to engage at all (LP: #1041066) when
      gtk-window-decorator creates offscreen windows that are stacked on top.
      This also fixes the problem with unredirect hiding all windows,
      because it thinks the desktop window should be stacked on top
      (LP: #980663).
    - Ensure unredirected windows don't stay unredirected if they're no longer
      on top. (LP: #1041047)
    - Fix launching terminal functionality and make show-hud default key
      visible. Update the defaults to org.compiz.integrated to reflect the
      actual gnome values pre-gnome-3. (LP: #1040081) (LP: #1046199)
      (LP: #1046190)
    - Fix show-hud, bump COMPIZ_GNOME_INTEGRATED_SETTINGS_LIST_SIZE.
      (LP: #1046212)
    - Fixed: Windows with an alpha-channel, like gnome-terminal, were not
      being considered as possibly covering fullscreen windows. But they most
      certainly can. This ensures such RGBA windows are visible if they're
      stacked above a fullscreen window. (LP: #1046661)
    - Remove ListToStringList (LP: #1046184)
    - Fix typo causing CMake Error (LP: #1045665)
    - Transitions gtk-window-decorator over to use GSettings. Add a testing
      framework for the options code. (LP: #1042323)
    - Also need kdeworkspace since kdecorationbridge.h is there
      (LP: #1046770)
    - Implements some cleanup that was suggested on the merge for the original
      port to gsettings. Other issues fixed as wel...

Read more...

Changed in compiz (Ubuntu Quantal):
status: Confirmed → Fix Released
Revision history for this message
In , Timo Aaltonen (tjaalton) wrote :

downstream bug from ubuntu:

https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/927168

started happening for more people when the default fallback session started using llvmpipe. Applies to 8.0.x and 9.0.

It's worked around for now ("Check that pixmaps which aren't managed by us actually exist before binding") but a proper fix should be added to mesa.

some stacktraces:
https://launchpadlibrarian.net/115551011/Stacktrace.txt
https://launchpadlibrarian.net/115545323/Stacktrace.txt
https://launchpadlibrarian.net/115549285/Stacktrace.txt
https://launchpadlibrarian.net/115587684/Stacktrace.txt
https://launchpadlibrarian.net/115563588/Stacktrace.txt
https://launchpadlibrarian.net/115553644/Stacktrace.txt

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

lowering the mesa bug priority, since it's worked around in compiz.

Changed in mesa (Ubuntu):
importance: Critical → High
Changed in compiz:
status: Fix Committed → Fix Released
Revision history for this message
IRIE Shinsuke (irie) wrote :

My own build of Blender that OSL support is enabled crashes on startup in Virtualbox.

Attached a backtrace.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

irie:

That's not directly related to this bug. Please log a new bug using this command:
    ubuntu-bug blender

Revision history for this message
IRIE Shinsuke (irie) wrote :

Thanks, Daniel.

I reported my Blender issue in Blender bug tracker.

Changed in compiz-core:
milestone: 0.9.7.10 → 0.9.7.12
Changed in compiz-core:
milestone: 0.9.7.12 → 0.9.7.14
Timo Aaltonen (tjaalton)
Changed in mesa (Ubuntu):
assignee: Timo Aaltonen (tjaalton) → nobody
milestone: ubuntu-12.10-beta-2 → none
Revision history for this message
In , Jfonseca-e (jfonseca-e) wrote :

IIUC the compiz-core patch

  https://i116412274.restricted.launchpadlibrarian.net/116412274/2c4b2354-00dc-11e2-a4a9-002481e91f22.txt?token=60HdnFNMGFc5zJXJwfwH9pN2wg6pmXxn

the fix consisted of not calling glXBindTexImageEXT when

      XGetGeometry (dpy, pixmap, ...)

returns false.

https://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt does say that

  "Currently, only pixmaps can be bound to textures. If <draw> is not a
  valid GLXPixmap, then a GLXBadPixmap error is generated."

so indeed this should be handled better.

This technically is a bug in st/dri though.

Changed in mesa:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
In , Gitlab-migration (gitlab-migration) wrote :

-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/225.

Changed in mesa:
status: Confirmed → Unknown
Timo Aaltonen (tjaalton)
Changed in mesa (Ubuntu):
importance: High → Wishlist
Oibaf (oibaf)
Changed in mesa:
importance: Medium → Unknown
Changed in mesa:
status: Unknown → New
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.