Bug 58253 - core dump in _cairo_xlib_shm_surface_mark_active
Summary: core dump in _cairo_xlib_shm_surface_mark_active
Status: RESOLVED FIXED
Alias: None
Product: cairo
Classification: Unclassified
Component: xlib backend (show other bugs)
Version: 1.12.8
Hardware: Other All
: medium normal
Assignee: Chris Wilson
QA Contact: cairo-bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-12-13 16:31 UTC by Martin Mokrejs
Modified: 2013-01-08 16:09 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Martin Mokrejs 2012-12-13 16:31:49 UTC
I quit seamonkey and it said:

NOTE: child process received `Goodbye', closing down

[1]+  Segmentation fault      (core dumped) seamonkey
$ $ gdb /usr/lib/seamonkey/seamonkey-bin /var/dumps/core.seamonkey.9930
GNU gdb (Gentoo 7.5 p1) 7.5
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /usr/lib64/seamonkey/seamonkey-bin...done.

warning: core file may not match specified executable file.
[New LWP 9930]
[New LWP 9936]
[New LWP 9937]
[New LWP 9961]
[New LWP 11125]

warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `seamonkey'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f8f877bba2b in raise () from /lib64/libpthread.so.0
(gdb) where
#0  0x00007f8f877bba2b in raise () from /lib64/libpthread.so.0
#1  0x00007f8f83cb88ac in nsProfileLock::FatalSignalHandler (signo=11, info=0x7fff25fd3630, context=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/seamonk/mozilla/toolkit/profile/nsProfileLock.cpp:180
#2  <signal handler called>
#3  0x00007f8f827546c2 in _cairo_xlib_shm_surface_mark_active () from /usr/lib64/libcairo.so.2
#4  0x00007f8f827549c4 in _cairo_xlib_surface_put_shm () from /usr/lib64/libcairo.so.2
#5  0x00007f8f8274fdf5 in _cairo_xlib_surface_flush () from /usr/lib64/libcairo.so.2
#6  0x00007f8f827226d3 in cairo_surface_finish () from /usr/lib64/libcairo.so.2
#7  0x00007f8f8274d5ec in _cairo_xlib_screen_destroy () from /usr/lib64/libcairo.so.2
#8  0x00007f8f82748418 in _cairo_xlib_display_finish () from /usr/lib64/libcairo.so.2
#9  0x00007f8f826e361a in cairo_device_finish () from /usr/lib64/libcairo.so.2
#10 0x00007f8f827484a7 in _cairo_xlib_close_display () from /usr/lib64/libcairo.so.2
#11 0x00007f8f81f7a8a2 in XCloseDisplay () from /usr/lib64/libX11.so.6
#12 0x00007f8f7e78994e in gdk_display_x11_finalize () from /usr/lib64/libgdk-x11-2.0.so.0
#13 0x00007f8f8041c3d3 in g_object_unref () from /usr/lib64/libgobject-2.0.so.0
#14 0x00007f8f83cad2e7 in MOZ_gdk_display_close (display=0x7f8f868c6210) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/mozilla/toolkit/xre/nsAppRunner.cpp:2611
#15 0x00007f8f83cb25f8 in XREMain::XRE_main (this=0x7fff25fd4528, argc=<optimized out>, argv=0x7fff25fd6908, aAppData=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/mozilla/toolkit/xre/nsAppRunner.cpp:3930
#16 0x00007f8f83cb26ea in XRE_main (argc=1, argv=0x7fff25fd6908, aAppData=0x611c70 <sAppData>, aFlags=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/mozilla/toolkit/xre/nsAppRunner.cpp:3947
#17 0x00000000004028b7 in do_main (argv=0x7fff25fd6908, argc=1, exePath=0x7fff25fd46b8 "/usr/lib64/seamonkey/") at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/suite/app/nsSuiteApp.cpp:173
#18 main (argc=<optimized out>, argv=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/suite/app/nsSuiteApp.cpp:261
(gdb) bt full
#0  0x00007f8f877bba2b in raise () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x00007f8f83cb88ac in nsProfileLock::FatalSignalHandler (signo=11, info=0x7fff25fd3630, context=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/seamonk/mozilla/toolkit/profile/nsProfileLock.cpp:180
        unblock_sigs = {__val = {1024, 0 <repeats 15 times>}}
        oldact = <optimized out>
#2  <signal handler called>
No symbol table info available.
#3  0x00007f8f827546c2 in _cairo_xlib_shm_surface_mark_active () from /usr/lib64/libcairo.so.2
No symbol table info available.
#4  0x00007f8f827549c4 in _cairo_xlib_surface_put_shm () from /usr/lib64/libcairo.so.2
No symbol table info available.
#5  0x00007f8f8274fdf5 in _cairo_xlib_surface_flush () from /usr/lib64/libcairo.so.2
No symbol table info available.
#6  0x00007f8f827226d3 in cairo_surface_finish () from /usr/lib64/libcairo.so.2
No symbol table info available.
#7  0x00007f8f8274d5ec in _cairo_xlib_screen_destroy () from /usr/lib64/libcairo.so.2
No symbol table info available.
#8  0x00007f8f82748418 in _cairo_xlib_display_finish () from /usr/lib64/libcairo.so.2
No symbol table info available.
#9  0x00007f8f826e361a in cairo_device_finish () from /usr/lib64/libcairo.so.2
No symbol table info available.
#10 0x00007f8f827484a7 in _cairo_xlib_close_display () from /usr/lib64/libcairo.so.2
No symbol table info available.
#11 0x00007f8f81f7a8a2 in XCloseDisplay () from /usr/lib64/libX11.so.6
No symbol table info available.
#12 0x00007f8f7e78994e in gdk_display_x11_finalize () from /usr/lib64/libgdk-x11-2.0.so.0
No symbol table info available.
#13 0x00007f8f8041c3d3 in g_object_unref () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#14 0x00007f8f83cad2e7 in MOZ_gdk_display_close (display=0x7f8f868c6210) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/mozilla/toolkit/xre/nsAppRunner.cpp:2611
        theme_is_qt = false
        settings = <optimized out>
        theme_name = 0x7f8f3c25a060 "\236\001"
#15 0x00007f8f83cb25f8 in XREMain::XRE_main (this=0x7fff25fd4528, argc=<optimized out>, argv=0x7fff25fd6908, aAppData=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/mozilla/toolkit/xre/nsAppRunner.cpp:3930
        sampler_raii3816 = {mHandle = 0x7f8f8688a000}
        rv = 0
        exit = false
        appInitiatedRestart = false
        result = <optimized out>
#16 0x00007f8f83cb26ea in XRE_main (argc=1, argv=0x7fff25fd6908, aAppData=0x611c70 <sAppData>, aFlags=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/mozilla/toolkit/xre/nsAppRunner.cpp:3947
        main = {mNativeApp = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f868b6630}, <No data fields>}, mProfileSvc = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f868edfc0}, <No data fields>}, mProfD = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f868452c0}, <No data fields>}, mProfLD = {<nsCOMPtr_base> = {
              mRawPtr = 0x7f8f86845380}, <No data fields>}, mProfileLock = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f868ebbe0}, <No data fields>}, mRemoteService = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f62e74430}, <No data fields>}, mScopedXPCom = 0x0, mAppData = 0x7f8f86836580, mDirProvider = 
    {<nsIDirectoryServiceProvider2> = {<nsIDirectoryServiceProvider> = {<nsISupports> = {_vptr.nsISupports = 0x7f8f857fa2b0 <vtable for nsXREDirProvider+16>}, <No data fields>}, <No data fields>}, <nsIProfileStartup> = {<nsISupports> = {
                _vptr.nsISupports = 0x7f8f857fa2f8 <vtable for nsXREDirProvider+88>}, <No data fields>}, mAppProvider = {<nsCOMPtr_base> = {mRawPtr = 0x0}, <No data fields>}, mGREDir = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f86844780}, <No data fields>}, mXULAppDir = {<nsCOMPtr_base> = {
                mRawPtr = 0x7f8f86844780}, <No data fields>}, mProfileDir = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f868452c0}, <No data fields>}, mProfileLocalDir = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f86845380}, <No data fields>}, mProfileNotified = false, mAppBundleDirectories = {<nsCOMArray_base> = {mArray = {
                  mImpl = 0x0}}, <No data fields>}, mExtensionDirectories = {<nsCOMArray_base> = {mArray = {mImpl = 0x7f8f6d4fa350}}, <No data fields>}, mThemeDirectories = {<nsCOMArray_base> = {mArray = {mImpl = 0x7f8f6d31e510}}, <No data fields>}}, 
          mProfileName = {<nsFixedCString> = {<nsCString> = {<nsACString_internal> = {mData = 0x7f8f868b6b78 "default", mLength = 7, mFlags = 65541}, <No data fields>}, mFixedCapacity = 63, mFixedBuf = 0x7fff25fd45e0 ""}, 
            mStorage = "\000\000\000\000\000\000\000\000\bi\375%\377\177\000\000D\n<\206\217\177\000\000\377\000\000\000\000\000\000\000\270F\375%\377\177\000\000\002", '\000' <repeats 15 times>, "L\260@\000\000\000\000"}, mDesktopStartupID = {<nsFixedCString> = {<nsCString> = {<nsACString_internal> = {
                  mData = 0x7fff25fd4640 "", mLength = 0, mFlags = 65553}, <No data fields>}, mFixedCapacity = 63, mFixedBuf = 0x7fff25fd4640 ""}, 
            mStorage = "\000\000\a\200\000\000\000\000\000F\375%\377\177\000\000\000\000\000\000\000\000\000\000\330g\375%\377\177\000\000\000F\204\206\217\177\000\000Hg\375%\377\177\000\000\016\000\a\200\000\000\000\000j\037\221\204\217\177\000"}, mStartOffline = false, mShuttingDown = false, 
          mDisableRemote = false, mGdkDisplay = 0x7f8f868c6210}
        result = <optimized out>
#17 0x00000000004028b7 in do_main (argv=0x7fff25fd6908, argc=1, exePath=0x7fff25fd46b8 "/usr/lib64/seamonkey/") at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/suite/app/nsSuiteApp.cpp:173
        appini = {<nsCOMPtr_base> = {mRawPtr = 0x7f8f86844600}, <No data fields>}
        rv = 0
        appDataFile = <optimized out>
        result = <optimized out>
#18 main (argc=<optimized out>, argv=<optimized out>) at /var/tmp/portage/www-client/seamonkey-2.13.2/work/comm-release/suite/app/nsSuiteApp.cpp:261
        exePath = "/usr/lib64/seamonkey/\000ibxpcom.so", '\000' <repeats 4063 times>
        rv = <optimized out>
        lastSlash = <optimized out>
        gotCounters = 1
        initialRUsage = {ru_utime = {tv_sec = 0, tv_usec = 0}, ru_stime = {tv_sec = 0, tv_usec = 0}, {ru_maxrss = 34516, __ru_maxrss_word = 34516}, {ru_ixrss = 0, __ru_ixrss_word = 0}, {ru_idrss = 0, __ru_idrss_word = 0}, {ru_isrss = 0, __ru_isrss_word = 0}, {ru_minflt = 451, __ru_minflt_word = 451}, {ru_majflt = 0, 
            __ru_majflt_word = 0}, {ru_nswap = 0, __ru_nswap_word = 0}, {ru_inblock = 0, __ru_inblock_word = 0}, {ru_oublock = 0, __ru_oublock_word = 0}, {ru_msgsnd = 0, __ru_msgsnd_word = 0}, {ru_msgrcv = 0, __ru_msgrcv_word = 0}, {ru_nsignals = 0, __ru_nsignals_word = 0}, {ru_nvcsw = 1, __ru_nvcsw_word = 1}, {
            ru_nivcsw = 0, __ru_nivcsw_word = 0}}
        result = 255
(gdb) quit


This is a Gentoo Linux with dev-python/pycairo-1.10.0-r3 and www-client/seamonkey-2.13.2.

I see similar stacktrace at:
https://bugs.mageia.org/show_bug.cgi?id=7954
Comment 1 Martin Mokrejs 2012-12-13 16:33:52 UTC
Sorry, wrong paste, I have x11-libs/cairo-1.12.8 installed.
Comment 2 Chris Wilson 2013-01-08 16:09:02 UTC
commit 2ed484817ef3a5084dc65a2ae1acdef551acd107
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Tue Jan 8 16:06:02 2013 +0000

    xlib/shm: Discard damage upon shm finish
    
    Both to make sure we do not leak the memory, but to also prevent
    _cairo_xlib_surface_put_shm() from operating upon the finished shm
    surface after the display is closed.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58253
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>


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.