touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #06283
[Bug 1199571] Re: Huge multi-threading violations in cairo
Launchpad has imported 5 comments from the remote bug at
https://bugs.freedesktop.org/show_bug.cgi?id=69034.
If you reply to an imported comment from within Launchpad, your comment
will be sent to the remote bug automatically. Read more about
Launchpad's inter-bugtracker facilities at
https://help.launchpad.net/InterBugTracking.
------------------------------------------------------------------------
On 2013-09-06T13:19:58+00:00 Marek Kašík wrote:
Created attachment 85352
Make usage of freetype thread safe
Current freetype backend is not thread safe. It can cause segmentation
fault when threads are not properly handled by applications which use
cairo (see https://bugzilla.redhat.com/show_bug.cgi?id=678397 and its
duplicates).
Attached patch tries to fix this problem by creating FT_Library object
for each thread. This is recommended solution by freetype
(http://git.savannah.gnu.org/cgit/freetype/freetype2.git/tree/include/freetype/freetype.h#n1684).
It adds a hash table to which FT_Library is added if a new thread needs
one. Thread IDs are used as keys for this table.
Marek
Reply at:
https://bugs.launchpad.net/ubuntu/+source/cairo/+bug/1199571/comments/5
------------------------------------------------------------------------
On 2013-09-06T17:58:01+00:00 Freedesktop wrote:
Unfortunately that FreeType "recommendation" is red herring. First,
people are free to pass around FT_Face among threads, and second, we
will be leaking stuff this way, unless we add proper TLS support.
At any rate. I suggest we use cairo for all glyph rasterizer instead.
Reply at:
https://bugs.launchpad.net/ubuntu/+source/cairo/+bug/1199571/comments/6
------------------------------------------------------------------------
On 2013-12-16T06:16:19+00:00 Freedesktop wrote:
Chris, any chance you have some time to think about this?
Reply at:
https://bugs.launchpad.net/ubuntu/+source/cairo/+bug/1199571/comments/7
------------------------------------------------------------------------
On 2014-07-31T16:45:44+00:00 Freedesktop wrote:
*** Bug 81874 has been marked as a duplicate of this bug. ***
Reply at:
https://bugs.launchpad.net/ubuntu/+source/cairo/+bug/1199571/comments/20
------------------------------------------------------------------------
On 2014-07-31T16:59:16+00:00 Freedesktop wrote:
Looks like copying thread-local storage macros from pixman-compiler.h
and using them to use per-thread FT_Library might easily get most of
this resolved. I can take a look if no one else steps in.
Reply at:
https://bugs.launchpad.net/ubuntu/+source/cairo/+bug/1199571/comments/21
** Changed in: libcairo
Status: Unknown => Confirmed
** Changed in: libcairo
Importance: Unknown => Critical
** Bug watch added: Red Hat Bugzilla #678397
https://bugzilla.redhat.com/show_bug.cgi?id=678397
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to cairo in Ubuntu.
https://bugs.launchpad.net/bugs/1199571
Title:
Huge multi-threading violations in cairo
Status in libcairo - cairo vector graphics library:
Confirmed
Status in “cairo” package in Ubuntu:
Triaged
Bug description:
Fresh dist-upgrade; brought up the dash, typed "term"; single clicked
on the terminal app and _bang_.
ProblemType: Crash
DistroRelease: Ubuntu 13.10
Package: unity 7.0.2+13.10.20130705.1-0ubuntu1
ProcVersionSignature: Ubuntu 3.10.0-2.10-generic 3.10.0
Uname: Linux 3.10.0-2-generic x86_64
ApportVersion: 2.10.2-0ubuntu4
Architecture: amd64
Date: Tue Jul 9 17:47:10 2013
EcryptfsInUse: Yes
ExecutablePath: /usr/bin/compiz
InstallationDate: Installed on 2013-06-06 (33 days ago)
InstallationMedia: Ubuntu 13.04 "Raring Ringtail" - Release amd64 (20130424)
MarkForUpload: True
ProcCmdline: compiz
ProcEnviron:
LANGUAGE=en_US
PATH=(custom, user)
XDG_RUNTIME_DIR=<set>
LANG=en_US.UTF-8
SHELL=/bin/bash
SegvAnalysis:
Segfault happened at: 0x7ff3b4ed7a10: mov %rdx,0x10(%rax)
PC (0x7ff3b4ed7a10) ok
source "%rdx" ok
destination "0x10(%rax)" (0x00000010) not located in a known VMA region (needed writable region)!
Stack memory exhausted (SP below stack segment)
SegvReason: writing NULL VMA
Signal: 11
SourcePackage: unity
StacktraceTop:
?? () from /usr/lib/x86_64-linux-gnu/libfreetype.so.6
?? () from /usr/lib/x86_64-linux-gnu/libfreetype.so.6
?? () from /usr/lib/x86_64-linux-gnu/libfreetype.so.6
?? () from /usr/lib/x86_64-linux-gnu/libfreetype.so.6
FT_Load_Glyph () from /usr/lib/x86_64-linux-gnu/libfreetype.so.6
Title: compiz crashed with SIGSEGV in FT_Load_Glyph()
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
To manage notifications about this bug go to:
https://bugs.launchpad.net/libcairo/+bug/1199571/+subscriptions