unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Icecat crash
@ 2016-12-25 23:34 Danny Milosavljevic
  2016-12-26  1:47 ` Chris Marusich
  2016-12-31 21:37 ` Maxim Cournoyer
  0 siblings, 2 replies; 9+ messages in thread
From: Danny Milosavljevic @ 2016-12-25 23:34 UTC (permalink / raw)
  To: guix-devel

Hi,

so I've finally found a 100% reproducible way to crash icecat. Previously it has been sporadic and not reproducible.

Try going to this site in a new icecat (guix master) instance:

http://arstechnica.com/security/2016/12/this-low-cost-device-may-be-the-worlds-best-hope-against-account-takeovers/

Scroll down. It will crash. Every time.

I think I saw a libjpeg warning somewhere when updating. Also, I get:

[20912] ###!!! ABORT: X_CopyArea: BadDrawable (invalid Pixmap or Window parameter); 3 requests ago: file /tmp/guix-build-icecat-45.5.1-gnu1.drv-0/icecat-45.5.1/toolkit/xre/nsX11ErrorHandler.cpp, line 157
[20912] ###!!! ABORT: X_CopyArea: BadDrawable (invalid Pixmap or Window parameter); 3 requests ago: file /tmp/guix-build-icecat-45.5.1-gnu1.drv-0/icecat-45.5.1/toolkit/xre/nsX11ErrorHandler.cpp, line 157

The X graphics driver is

[    31.045] (--) intel(0): Integrated Graphics Chipset: Intel(R) GM45

.

I did reconfigure Guix today - so it's quite current.

Backtrace is

(gdb) bt
#0  0x0000000000404da6 in mozalloc_abort(char const*) ()
#1  0x00007ffff2d954d6 in NS_DebugBreak () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#2  0x00007ffff461721e in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#3  0x00007fffed787ac5 in _XError () from /gnu/store/dgz1p150n6ffs54qq4rzyh9fx26lrsad-libx11-1.6.4/lib/libX11.so.6
#4  0x00007fffed784bc7 in handle_error () from /gnu/store/dgz1p150n6ffs54qq4rzyh9fx26lrsad-libx11-1.6.4/lib/libX11.so.6
#5  0x00007fffed784c75 in handle_response () from /gnu/store/dgz1p150n6ffs54qq4rzyh9fx26lrsad-libx11-1.6.4/lib/libX11.so.6
#6  0x00007fffed7856bd in _XReadEvents () from /gnu/store/dgz1p150n6ffs54qq4rzyh9fx26lrsad-libx11-1.6.4/lib/libX11.so.6
#7  0x00007fffedf39561 in _cairo_xlib_shm_surface_flush () from /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6/lib/libcairo.so.2
#8  0x00007fffedf0921b in cairo_surface_flush () from /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6/lib/libcairo.so.2
#9  0x00007fffedf35e5d in _cairo_xlib_surface_discard_shm () from /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6/lib/libcairo.so.2
#10 0x00007fffedf36117 in _cairo_xlib_surface_finish () from /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6/lib/libcairo.so.2
#11 0x00007fffedf08626 in _cairo_surface_finish () from /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6/lib/libcairo.so.2
#12 0x00007fffedf08fb0 in cairo_surface_destroy () from /gnu/store/y30l675nz41p87pmvzscqhhyhik626na-cairo-1.14.6/lib/libcairo.so.2
#13 0x00007ffff34a5836 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#14 0x00007ffff3424df5 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#15 0x00007ffff345cb7d in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#16 0x00007ffff345cbec in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#17 0x00007ffff31133bc in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#18 0x00007ffff31d53d9 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#19 0x00007ffff2fc71a2 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#20 0x00007ffff2fcbb25 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#21 0x00007ffff2fcd065 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#22 0x00007ffff2fa95ef in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#23 0x00007ffff2fab117 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#24 0x00007ffff2fabd99 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#25 0x00007ffff2fc4964 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#26 0x00007ffff2dd0b30 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#27 0x00007ffff2deaf60 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#28 0x00007ffff2fc4cf4 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#29 0x00007ffff2fa964f in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#30 0x00007ffff403d112 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#31 0x00007ffff45e2e2b in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#32 0x00007ffff4615680 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#33 0x00007ffff4615920 in ?? () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#34 0x00007ffff4615b34 in XRE_main () from /gnu/store/4jv2jr91pl7p7gwsi4bincvd19gn29hi-icecat-45.5.1-gnu1/lib/icecat-45.5.1/libxul.so
#35 0x0000000000404bd6 in ?? ()
#36 0x00000000004044d1 in ?? ()
#37 0x00007ffff6e142a0 in __libc_start_main (main=0x404430, argc=2, argv=0x7fffffffd928, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, 
    stack_end=0x7fffffffd918) at ../csu/libc-start.c:289
#38 0x00000000004045ea in _start ()
(gdb) 

That reminds me, is there a way to have debug symbols in icecat:debug or something? What's our plan there?

I see the comment about it needing 5 GiB - but it doesn't have to be installed by default or anything...

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2016-12-25 23:34 Icecat crash Danny Milosavljevic
@ 2016-12-26  1:47 ` Chris Marusich
  2016-12-26  2:15   ` Leo Famulari
  2016-12-31 21:37 ` Maxim Cournoyer
  1 sibling, 1 reply; 9+ messages in thread
From: Chris Marusich @ 2016-12-26  1:47 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 682 bytes --]

Danny Milosavljevic <dannym@scratchpost.org> writes:

> Hi,
>
> so I've finally found a 100% reproducible way to crash icecat. Previously it has been sporadic and not reproducible.
>
> Try going to this site in a new icecat (guix master) instance:
>
> http://arstechnica.com/security/2016/12/this-low-cost-device-may-be-the-worlds-best-hope-against-account-takeovers/
>
> Scroll down. It will crash. Every time.

This doesn't crash for me.  Note that I have applied the "fix" for the
previously observed "crashiness", as described here - perhaps that is
why it doesn't crash for me:

https://lists.gnu.org/archive/html/help-guix/2016-11/msg00008.html

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2016-12-26  1:47 ` Chris Marusich
@ 2016-12-26  2:15   ` Leo Famulari
  2017-02-15 22:12     ` Julien Lepiller
  0 siblings, 1 reply; 9+ messages in thread
From: Leo Famulari @ 2016-12-26  2:15 UTC (permalink / raw)
  To: Chris Marusich; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1351 bytes --]

On Sun, Dec 25, 2016 at 05:47:33PM -0800, Chris Marusich wrote:
> Danny Milosavljevic <dannym@scratchpost.org> writes:
> > so I've finally found a 100% reproducible way to crash icecat.
> > Previously it has been sporadic and not reproducible.
> >
> > Try going to this site in a new icecat (guix master) instance:
> >
> > http://arstechnica.com/security/2016/12/this-low-cost-device-may-be-the-worlds-best-hope-against-account-takeovers/
> >
> > Scroll down. It will crash. Every time.
> 
> This doesn't crash for me.  Note that I have applied the "fix" for the
> previously observed "crashiness", as described here - perhaps that is
> why it doesn't crash for me:
> 
> https://lists.gnu.org/archive/html/help-guix/2016-11/msg00008.html

Unfortunately for debugging purposes, this doesn't crash Icecat for me
either. I'm still using the Cairo rendering backend.

It's difficult to use a site like this as a reproducer, since every user
will get totally different content via the advertisements.

For the record, it also does not crash my Debian Firefox 45.5.1, which
uses uBlock Origin and Privacy Badger to block 1 and 9 domains,
respectively.

If you can still reproduce the crash, I think it's worth it to save the
entire web page, ads included, and share that if you're satisfied
there's no sensitive data included.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2016-12-25 23:34 Icecat crash Danny Milosavljevic
  2016-12-26  1:47 ` Chris Marusich
@ 2016-12-31 21:37 ` Maxim Cournoyer
  1 sibling, 0 replies; 9+ messages in thread
From: Maxim Cournoyer @ 2016-12-31 21:37 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 185 bytes --]

Hi Danny!

Good find; I can reproduce the crash here... I don't even need to
scroll, it's nearly instant! Here's the IceCat generated report
(copied from IceCat's crash popup window):


[-- Attachment #2: Type: text/plain, Size: 5956 bytes --]

AbortMessage: [31898] ###!!! ABORT: X_CopyArea: BadDrawable (invalid Pixmap or Window parameter); 3 requests ago: file /tmp/guix-build-icecat-45.5.1-gnu1.drv-0/icecat-45.5.1/toolkit/xre/nsX11ErrorHandler.cpp, line 157
Add-ons: %7B46551EC9-40F0-4e47-8E18-8E5CF550CFB8%7D:2.0.7,abouticecat%40gnu.org:1.0,https-everywhere-eff%40eff.org:5.2.7,%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D:45.5.1,loop%40mozilla.org:1.1.14,spyblock%40gnu.org:2.6.9.0,html5-video-everywhere%40lejenome.me:0.3.4,jid1-KtlZuoiikVfFew%40jetpack:6.0.13
AddonsShouldHaveBlockedE10s: 1
BuildID: 20161211072134
CrashTime: 1483219996
EMCheckCompatibility: true
FramePoisonBase: 7ffffffff0dea000
FramePoisonSize: 4096
InstallTime: 1481616437
Notes: OpenGL: Intel Open Source Technology Center -- Mesa DRI Intel(R) Ironlake Mobile  -- 2.1 Mesa 13.0.2 -- texture_from_pixmap
X_CopyArea: BadDrawable (invalid Pixmap or Window parameter); 3 requests agoxpcom_runtime_abort([31898] ###!!! ABORT: X_CopyArea: BadDrawable (invalid Pixmap or Window parameter); 3 requests ago: file /tmp/guix-build-icecat-45.5.1-gnu1.drv-0/icecat-45.5.1/toolkit/xre/nsX11ErrorHandler.cpp, line 157)
ProductID: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
ProductName: IceCat
ReleaseChannel: default
SafeMode: 0
SecondsSinceLastCrash: 285
StartupTime: 1483219929
TelemetryEnvironment: {"build":{"applicationId":"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}","applicationName":"IceCat","architecture":"x86-64","buildId":"20161211072134","version":"45.5.1","vendor":"GNU","platformVersion":"45.5.1","xpcomAbi":"x86_64-gcc3","hotfixVersion":null},"partner":{"distributionId":"gnu","distributionVersion":"1.0","partnerId":null,"distributor":null,"distributorChannel":null,"partnerNames":[]},"system":{"memoryMB":3753,"virtualMaxMB":null,"cpu":{"count":2,"cores":2,"vendor":"GenuineIntel","family":6,"model":37,"stepping":5,"l2cacheKB":256,"l3cacheKB":2048,"speedMHz":1197,"extensions":["hasMMX","hasSSE","hasSSE2","hasSSE3","hasSSSE3"]},"os":{"name":"Linux","version":"4.8.14-gnu","locale":"en-US"},"hdd":{"profile":{"model":null,"revision":null},"binary":{"model":null,"revision":null},"system":{"model":null,"revision":null}},"gfx":{"D2DEnabled":null,"DWriteEnabled":null,"adapters":[{"description":"Intel Open Source Technology Center -- Mesa DRI Intel(R) Ironlake Mobile ","vendorID":"Intel Open Source Technology Center","deviceID":"Mesa DRI Intel(R) Ironlake Mobile ","subsysID":null,"RAM":null,"driver":null,"driverVersion":"2.1 Mesa 13.0.2","driverDate":null,"GPUActive":true}],"monitors":[],"features":{"compositor":"none"}}},"settings":{"blocklistEnabled":false,"e10sEnabled":false,"telemetryEnabled":false,"isInOptoutSample":false,"locale":"en-US","update":{"channel":"default","enabled":false,"autoDownload":false},"userPrefs":{"browser.cache.disk.capacity":358400,"browser.newtabpage.enhanced":false,"browser.startup.page":3,"general.smoothScroll":false},"addonCompatibilityCheckEnabled":true,"isDefaultBrowser":false},"profile":{"creationDate":17094,"resetDate":17100},"addons":{"activeAddons":{"{46551EC9-40F0-4e47-8E18-8E5CF550CFB8}":{"blocklisted":false,"description":"Restyle the web with Stylish, a user styles manager.","name":"Stylish","userDisabled":false,"appDisabled":false,"version":"2.0.7","scope":1,"type":"extension","foreignInstall":false,"hasBinaryComponents":false,"installDay":17100,"updateDay":17100,"signedState":2},"loop@mozilla.org":{"blocklisted":false,"description":"Web sharing for IceCat","name":"IceCat Hello Beta","userDisabled":false,"appDisabled":false,"version":"1.1.14","scope":1,"type":"extension","foreignInstall":false,"hasBinaryComponents":false,"installDay":0,"updateDay":0},"abouticecat@gnu.org":{"blocklisted":false,"description":null,"name":"IceCatHome","userDisabled":false,"appDisabled":false,"version":"1.0","scope":4,"type":"extension","foreignInstall":true,"hasBinaryComponents":false,"installDay":0,"updateDay":0,"signedState":0},"spyblock@gnu.org":{"blocklisted":false,"description":"Privacy blacklist filter","name":"SpyBlock","userDisabled":false,"appDisabled":false,"version":"2.6.9.0","scope":4,"type":"extension","foreignInstall":true,"hasBinaryComponents":false,"installDay":0,"updateDay":0,"signedState":0},"https-everywhere-eff@eff.org":{"blocklisted":false,"description":"Encrypt the Web! Automatically use HTTPS security on many sites.","name":"HTTPS Everywhere","userDisabled":false,"appDisabled":false,"version":"5.2.7","scope":4,"type":"extension","foreignInstall":true,"hasBinaryComponents":false,"installDay":0,"updateDay":0,"signedState":-2},"html5-video-everywhere@lejenome.me":{"blocklisted":false,"description":"Replace video player with Firefox native video player","name":"HTML5 Video Everywhere!","userDisabled":false,"appDisabled":false,"version":"0.3.4","scope":4,"type":"extension","foreignInstall":true,"hasBinaryComponents":false,"installDay":0,"updateDay":0,"signedState":-2},"jid1-KtlZuoiikVfFew@jetpack":{"blocklisted":false,"description":"GNU LibreJS is an add-on for Mozilla-based browsers (IceCat, Firefox, Abrowser, Iceweasel)\n that pre","name":"GNU LibreJS","userDisabled":false,"appDisabled":false,"version":"6.0.13","scope":4,"type":"extension","foreignInstall":true,"hasBinaryComponents":false,"installDay":0,"updateDay":0,"signedState":-2}},"theme":{"id":"{972ce4c6-7e08-4474-a285-3208198ce6fd}","blocklisted":false,"description":"The default theme.","name":"Default","userDisabled":false,"appDisabled":false,"version":"45.5.1","scope":4,"foreignInstall":false,"hasBinaryComponents":false,"installDay":0,"updateDay":0},"activePlugins":[],"activeGMPlugins":{},"activeExperiment":{},"persona":null}}
Theme: classic/1.0
Throttleable: 1
URL: http://arstechnica.com/security/2016/12/this-low-cost-device-may-be-the-worlds-best-hope-against-account-takeovers/
Vendor: GNU
Version: 45.5.1
useragent_locale: en-US

This report also contains technical information about the state of the application when it crashed.

[-- Attachment #3: Type: text/plain, Size: 7 bytes --]


Maxim

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2016-12-26  2:15   ` Leo Famulari
@ 2017-02-15 22:12     ` Julien Lepiller
  2017-02-21 22:44       ` Leo Famulari
  0 siblings, 1 reply; 9+ messages in thread
From: Julien Lepiller @ 2017-02-15 22:12 UTC (permalink / raw)
  To: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 1922 bytes --]

On Sun, 25 Dec 2016 21:15:19 -0500
Leo Famulari <leo@famulari.name> wrote:

> On Sun, Dec 25, 2016 at 05:47:33PM -0800, Chris Marusich wrote:
> > Danny Milosavljevic <dannym@scratchpost.org> writes:  
> > > so I've finally found a 100% reproducible way to crash icecat.
> > > Previously it has been sporadic and not reproducible.
> > >
> > > Try going to this site in a new icecat (guix master) instance:
> > >
> > > http://arstechnica.com/security/2016/12/this-low-cost-device-may-be-the-worlds-best-hope-against-account-takeovers/
> > >
> > > Scroll down. It will crash. Every time.  
> > 
> > This doesn't crash for me.  Note that I have applied the "fix" for
> > the previously observed "crashiness", as described here - perhaps
> > that is why it doesn't crash for me:
> > 
> > https://lists.gnu.org/archive/html/help-guix/2016-11/msg00008.html  
> 
> Unfortunately for debugging purposes, this doesn't crash Icecat for me
> either. I'm still using the Cairo rendering backend.
> 
> It's difficult to use a site like this as a reproducer, since every
> user will get totally different content via the advertisements.
> 
> For the record, it also does not crash my Debian Firefox 45.5.1, which
> uses uBlock Origin and Privacy Badger to block 1 and 9 domains,
> respectively.
> 
> If you can still reproduce the crash, I think it's worth it to save
> the entire web page, ads included, and share that if you're satisfied
> there's no sensitive data included.

Hey, I'm also experiencing crashes with icecat since a few months. It
just seems to happen randomly. I've found a note about that on the LFS
website on the firefox page that says that using system cairo is
causing a crash when it tries to do background rendering. So I've
changed our icecat recipe to use the bundled version of cairo, and I
don't get any crash anymore. Would something like this patch be
acceptable?

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-icecat-Fix-random-crashes.patch --]
[-- Type: text/x-patch, Size: 2002 bytes --]

From 89a121bab987caef7f0fbe0f5e24085c3ccae42d Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Tue, 14 Feb 2017 20:59:15 +0100
Subject: [PATCH] gnu: icecat: Fix random crashes.

gnu/packages/gnuzilla.scm (icecat): Remove cairo dependency to fix crashes.
---
 gnu/packages/gnuzilla.scm | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 9279c46b5..90655fd76 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -404,6 +404,8 @@ standards.")
                       ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=847568>
                       ;;
                       ;; TODO: Use system graphite2.
+                      ;; TODO: Use system cairo. This currently causes random
+                      ;; crash when icecat does background rendering.
                       ;;
                       "modules/freetype2"
                       "modules/zlib"
@@ -412,7 +414,6 @@ standards.")
                       "media/libjpeg"
                       "media/libvpx"
                       "security/nss"
-                      "gfx/cairo"
                       "js/src/ctypes/libffi"
                       "db/sqlite3"))
           ;; Delete .pyc files, typically present in icecat source tarballs
@@ -426,7 +427,6 @@ standards.")
     (inputs
      `(("alsa-lib" ,alsa-lib)
        ("bzip2" ,bzip2)
-       ("cairo" ,cairo)
        ("cups" ,cups)
        ("dbus-glib" ,dbus-glib)
        ("gdk-pixbuf" ,gdk-pixbuf)
@@ -511,7 +511,6 @@ standards.")
                            "--with-system-nspr"
                            "--with-system-nss"
                            "--enable-system-pixman"
-                           "--enable-system-cairo"
                            "--enable-system-ffi"
                            "--enable-system-hunspell"
                            "--enable-system-sqlite"
-- 
2.11.1


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2017-02-15 22:12     ` Julien Lepiller
@ 2017-02-21 22:44       ` Leo Famulari
  2017-02-22  8:41         ` ng0
  2017-02-22  9:38         ` John Darrington
  0 siblings, 2 replies; 9+ messages in thread
From: Leo Famulari @ 2017-02-21 22:44 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 3652 bytes --]

On Wed, Feb 15, 2017 at 11:12:45PM +0100, Julien Lepiller wrote:
> Hey, I'm also experiencing crashes with icecat since a few months. It
> just seems to happen randomly. I've found a note about that on the LFS
> website on the firefox page that says that using system cairo is
> causing a crash when it tries to do background rendering. So I've
> changed our icecat recipe to use the bundled version of cairo, and I
> don't get any crash anymore. Would something like this patch be
> acceptable?

For serious upstream vendors like Mozilla, one of the reasons they
bundle things is that they are hitting bugs in the 3rd party library
that are not fixed upstream.

On the other hand, distros like to unbundle because the upstream vendor
tends not to patch security vulnerabilities in their bundled copies
quickly enough, in our opinion.

So, if we want to use the bundled cairo, we need to understand what
upstream version of cairo it is based on, and if it contains any
unpatched security vulnerabilities.

Of course, denial-of-service is a security issue, and our IceCat is
currently suffering from it due to this cairo crash.

Another option is figure out how to build our IceCat using the skia
rendering backend [0] instead of cairo, which is the work-around that we
have been recommending to users. Asking users to change this option
themselves is not a good solution, in my opinion.

WDYT?

[0]
https://bugzilla.mozilla.org/show_bug.cgi?id=1038800
https://bugzilla.mozilla.org/show_bug.cgi?id=740200#c44

> From 89a121bab987caef7f0fbe0f5e24085c3ccae42d Mon Sep 17 00:00:00 2001
> From: Julien Lepiller <julien@lepiller.eu>
> Date: Tue, 14 Feb 2017 20:59:15 +0100
> Subject: [PATCH] gnu: icecat: Fix random crashes.
> 
> gnu/packages/gnuzilla.scm (icecat): Remove cairo dependency to fix crashes.
> ---
>  gnu/packages/gnuzilla.scm | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
> index 9279c46b5..90655fd76 100644
> --- a/gnu/packages/gnuzilla.scm
> +++ b/gnu/packages/gnuzilla.scm
> @@ -404,6 +404,8 @@ standards.")
>                        ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=847568>
>                        ;;
>                        ;; TODO: Use system graphite2.
> +                      ;; TODO: Use system cairo. This currently causes random
> +                      ;; crash when icecat does background rendering.
>                        ;;
>                        "modules/freetype2"
>                        "modules/zlib"
> @@ -412,7 +414,6 @@ standards.")
>                        "media/libjpeg"
>                        "media/libvpx"
>                        "security/nss"
> -                      "gfx/cairo"
>                        "js/src/ctypes/libffi"
>                        "db/sqlite3"))
>            ;; Delete .pyc files, typically present in icecat source tarballs
> @@ -426,7 +427,6 @@ standards.")
>      (inputs
>       `(("alsa-lib" ,alsa-lib)
>         ("bzip2" ,bzip2)
> -       ("cairo" ,cairo)
>         ("cups" ,cups)
>         ("dbus-glib" ,dbus-glib)
>         ("gdk-pixbuf" ,gdk-pixbuf)
> @@ -511,7 +511,6 @@ standards.")
>                             "--with-system-nspr"
>                             "--with-system-nss"
>                             "--enable-system-pixman"
> -                           "--enable-system-cairo"
>                             "--enable-system-ffi"
>                             "--enable-system-hunspell"
>                             "--enable-system-sqlite"
> -- 
> 2.11.1
> 




[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2017-02-21 22:44       ` Leo Famulari
@ 2017-02-22  8:41         ` ng0
  2017-02-22  9:38         ` John Darrington
  1 sibling, 0 replies; 9+ messages in thread
From: ng0 @ 2017-02-22  8:41 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

On 17-02-21 17:44:43, Leo Famulari wrote:
> On Wed, Feb 15, 2017 at 11:12:45PM +0100, Julien Lepiller wrote:
> > Hey, I'm also experiencing crashes with icecat since a few months. It
> > just seems to happen randomly. I've found a note about that on the LFS
> > website on the firefox page that says that using system cairo is
> > causing a crash when it tries to do background rendering. So I've
> > changed our icecat recipe to use the bundled version of cairo, and I
> > don't get any crash anymore. Would something like this patch be
> > acceptable?
> 
> For serious upstream vendors like Mozilla, one of the reasons they
> bundle things is that they are hitting bugs in the 3rd party library
> that are not fixed upstream.
> 
> On the other hand, distros like to unbundle because the upstream vendor
> tends not to patch security vulnerabilities in their bundled copies
> quickly enough, in our opinion.
> 
> So, if we want to use the bundled cairo, we need to understand what
> upstream version of cairo it is based on, and if it contains any
> unpatched security vulnerabilities.
> 
> Of course, denial-of-service is a security issue, and our IceCat is
> currently suffering from it due to this cairo crash.
> 
> Another option is figure out how to build our IceCat using the skia
> rendering backend [0] instead of cairo, which is the work-around that we
> have been recommending to users. Asking users to change this option
> themselves is not a good solution, in my opinion.

I'm all for the skia solution.
I haven't looked at icecat source in a while, but it should be as easy
as modifying/adding "--enable-skia" to the mozconfig

For a real world example, Gentoo uses this by default for firefox:

https://gitweb.gentoo.org/repo/gentoo.git/tree/eclass/mozconfig-v6.51.eclass
https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/firefox/firefox-45.7.0.ebuild#n193

> WDYT?
> 
> [0]
> https://bugzilla.mozilla.org/show_bug.cgi?id=1038800
> https://bugzilla.mozilla.org/show_bug.cgi?id=740200#c44
> 
> > From 89a121bab987caef7f0fbe0f5e24085c3ccae42d Mon Sep 17 00:00:00 2001
> > From: Julien Lepiller <julien@lepiller.eu>
> > Date: Tue, 14 Feb 2017 20:59:15 +0100
> > Subject: [PATCH] gnu: icecat: Fix random crashes.
> > 
> > gnu/packages/gnuzilla.scm (icecat): Remove cairo dependency to fix crashes.
> > ---
> >  gnu/packages/gnuzilla.scm | 5 ++---
> >  1 file changed, 2 insertions(+), 3 deletions(-)
> > 
> > diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
> > index 9279c46b5..90655fd76 100644
> > --- a/gnu/packages/gnuzilla.scm
> > +++ b/gnu/packages/gnuzilla.scm
> > @@ -404,6 +404,8 @@ standards.")
> >                        ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=847568>
> >                        ;;
> >                        ;; TODO: Use system graphite2.
> > +                      ;; TODO: Use system cairo. This currently causes random
> > +                      ;; crash when icecat does background rendering.
> >                        ;;
> >                        "modules/freetype2"
> >                        "modules/zlib"
> > @@ -412,7 +414,6 @@ standards.")
> >                        "media/libjpeg"
> >                        "media/libvpx"
> >                        "security/nss"
> > -                      "gfx/cairo"
> >                        "js/src/ctypes/libffi"
> >                        "db/sqlite3"))
> >            ;; Delete .pyc files, typically present in icecat source tarballs
> > @@ -426,7 +427,6 @@ standards.")
> >      (inputs
> >       `(("alsa-lib" ,alsa-lib)
> >         ("bzip2" ,bzip2)
> > -       ("cairo" ,cairo)
> >         ("cups" ,cups)
> >         ("dbus-glib" ,dbus-glib)
> >         ("gdk-pixbuf" ,gdk-pixbuf)
> > @@ -511,7 +511,6 @@ standards.")
> >                             "--with-system-nspr"
> >                             "--with-system-nss"
> >                             "--enable-system-pixman"
> > -                           "--enable-system-cairo"
> >                             "--enable-system-ffi"
> >                             "--enable-system-hunspell"
> >                             "--enable-system-sqlite"
> > -- 
> > 2.11.1
> > 
> 
> 
> 

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2017-02-21 22:44       ` Leo Famulari
  2017-02-22  8:41         ` ng0
@ 2017-02-22  9:38         ` John Darrington
  2017-02-24 18:24           ` Leo Famulari
  1 sibling, 1 reply; 9+ messages in thread
From: John Darrington @ 2017-02-22  9:38 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1475 bytes --]

On Tue, Feb 21, 2017 at 05:44:43PM -0500, Leo Famulari wrote:
     On Wed, Feb 15, 2017 at 11:12:45PM +0100, Julien Lepiller wrote:
     > Hey, I'm also experiencing crashes with icecat since a few months. It
     > just seems to happen randomly. I've found a note about that on the LFS
     > website on the firefox page that says that using system cairo is
     > causing a crash when it tries to do background rendering. So I've
     > changed our icecat recipe to use the bundled version of cairo, and I
     > don't get any crash anymore. Would something like this patch be
     > acceptable?
     
     For serious upstream vendors like Mozilla, one of the reasons they
     bundle things is that they are hitting bugs in the 3rd party library
     that are not fixed upstream.
     
     On the other hand, distros like to unbundle because the upstream vendor
     tends not to patch security vulnerabilities in their bundled copies
     quickly enough, in our opinion.


Surely the advantage of a Functional Package Management System like Guix is
that we have the best of both worlds.

We can specify a *specific* version of a dependency to use (patched if necessary)
but are not forced to bundle it.
     
J'

-- 
Avoid eavesdropping.  Send strong encrypted email.
PGP Public key ID: 1024D/2DE827B3 
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.


[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Icecat crash
  2017-02-22  9:38         ` John Darrington
@ 2017-02-24 18:24           ` Leo Famulari
  0 siblings, 0 replies; 9+ messages in thread
From: Leo Famulari @ 2017-02-24 18:24 UTC (permalink / raw)
  To: John Darrington; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1492 bytes --]

On Wed, Feb 22, 2017 at 10:38:02AM +0100, John Darrington wrote:
> On Tue, Feb 21, 2017 at 05:44:43PM -0500, Leo Famulari wrote:
>      On Wed, Feb 15, 2017 at 11:12:45PM +0100, Julien Lepiller wrote:
>      > Hey, I'm also experiencing crashes with icecat since a few months. It
>      > just seems to happen randomly. I've found a note about that on the LFS
>      > website on the firefox page that says that using system cairo is
>      > causing a crash when it tries to do background rendering. So I've
>      > changed our icecat recipe to use the bundled version of cairo, and I
>      > don't get any crash anymore. Would something like this patch be
>      > acceptable?
>      
>      For serious upstream vendors like Mozilla, one of the reasons they
>      bundle things is that they are hitting bugs in the 3rd party library
>      that are not fixed upstream.
>      
>      On the other hand, distros like to unbundle because the upstream vendor
>      tends not to patch security vulnerabilities in their bundled copies
>      quickly enough, in our opinion.
> 
> 
> Surely the advantage of a Functional Package Management System like Guix is
> that we have the best of both worlds.
> 
> We can specify a *specific* version of a dependency to use (patched if necessary)
> but are not forced to bundle it.

You're right. Now that we've discussed some of the issues involved here,
we can start working on fixing this bug in our package. Any takers?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2017-02-24 18:24 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-25 23:34 Icecat crash Danny Milosavljevic
2016-12-26  1:47 ` Chris Marusich
2016-12-26  2:15   ` Leo Famulari
2017-02-15 22:12     ` Julien Lepiller
2017-02-21 22:44       ` Leo Famulari
2017-02-22  8:41         ` ng0
2017-02-22  9:38         ` John Darrington
2017-02-24 18:24           ` Leo Famulari
2016-12-31 21:37 ` Maxim Cournoyer

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).