Date: Sun, 16 Aug 2009 16:48:30 -0700 From: Jonathan Makela <jonmakela@gmail.com> To: freebsd-gecko@freebsd.org Subject: Javascript dialogs, HTML 5 causes aborts/segfaults with sem loaded in www/firefox35 Message-ID: <83ea7dd0908161648u12f4c720r9f69534118f4b75d@mail.gmail.com> In-Reply-To: <83ea7dd0908161619o21bebe26xc0a8bb5797f35fd7@mail.gmail.com> References: <83ea7dd0908161619o21bebe26xc0a8bb5797f35fd7@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is actually two separate bugs, although I have no doubt they are related. Btw, before people start asking, I HAVE loaded sem.ko, as confirmed by kldstat. These also occur in safe mode with all plugins disabled except for "Default Plugin". This is the latest firefox35 port. These bugs also survived a reboot and only starting firefox and an xterm in twm. Note: I usually use icewm with GTK applications. Bug 1. The HTML5 video on the intro page. It works, barely. Skipping backwards/forwards unreliably fails, resulting in a segfault. It also uses 100% of CPU (enough to stop the clock) for between 3-20 seconds while loading. Most of the time, it doesn't fully load - or at least only plays a clip of varying length from the beginning. Attempting to refresh the page with the video expanded resuts in a segfault. Bug 2. If javascript on a page attempts to open a dialog window of any sort(prompt,alert,anything else except for a new tab) FF dies with the message Assertion 'pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE) == 0' failed at pulsecore/mutex-posix.c:52, function pa_mutex_new(). Aborting. Abort trap This is exhibited on http://www.pageresource.com/jscript/jalert.htm .Mousing over the the popup link causes an abort. Oddly enough, that ALSO occurs while I'm shutting the browser window with File->Quit. I'm 90% sure that these problems have something to do with something else I'm running. Since I installed about 500 ports (literally) over the past 3 days, it could be almost anything. I recompiled with the DEBUG knob enabled. There are a LOT of failed assertions and warnings while starting/running. I can provide the entire logs on request, but here are several segments: ....(fine past registering the components) *** Registering components in: nsUnixProxyModule WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file nsXREDirProvider.cpp, line 1159 WARNING: NS_ENSURE_TRUE(mHiddenWindow) failed: file nsAppShellService.cpp, line 396 ++WEBSHELL 0x2ca0bc00 == 1 ++DOMWINDOW == 1 (0x2c5b92f0) [serial = 1] [outer = 0x0] WARNING: dependent window created without a parent: file nsAppStartup.cpp, line 484 ++WEBSHELL 0x2ca0c800 == 2 ++DOMWINDOW == 2 (0x2c5b94b0) [serial = 2] [outer = 0x0] ++DOMWINDOW == 3 (0x2c5b9670) [serial = 3] [outer = 0x2c5b9480] ++DOMWINDOW == 4 (0x2c5b99f0) [serial = 4] [outer = 0x2c5b92c0] ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 ###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6707 ###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6725 ... WARNING: NS_ENSURE_TRUE(browserChrome) failed: file nsDocShell.cpp, line 9297 WARNING: Something wrong when creating the docshell for a frameloader!: file nsFrameLoader.cpp, line 902 WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file nsFrameLoader.cpp, line 926 WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file nsFrameLoader.cpp, line 182 ++WEBSHELL 0x2d302000 == 5 ++DOMWINDOW == 8 (0x2c5bb970) [serial = 8] [outer = 0x0] WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file ./nsPresContext.h, line 1026 WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file ./nsPresContext.h, line 1026 ###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6707 ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 ++DOMWINDOW == 9 (0x2c5bcaf0) [serial = 9] [outer = 0x2c5ba980] ++DOMWINDOW == 10 (0x2c5bccb0) [serial = 10] [outer = 0x2c5bb940] ###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6707 ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 ###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6707 ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 ###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6725 pldhash: for the table at address 0x2d79c4d8, the given entrySize of 52 probably favors chaining over double hashing. WARNING: Positioned frame that does not handle positioned kids; looking further up the parent chain: file nsCSSFrameConstructor.cpp, line 7803 WARNING: Positioned frame that does not handle positioned kids; looking further up the parent chain: file nsCSSFrameConstructor.cpp, line 7803 WARNING: Positioned frame that does not handle positioned kids; looking further up the parent chain: file nsCSSFrameConstructor.cpp, line 7803 ++WEBSHELL 0x2d306800 == 6 ... *** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)" location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 312" data: no] WARNING: Positioned frame that does not handle positioned kids; looking further up the parent chain: file nsCSSFrameConstructor.cpp, line 7803 ++WEBSHELL 0x2d306e00 == 7 ++DOMWINDOW == 13 (0x2d7d0570) [serial = 13] [outer = 0x0] ++DOMWINDOW == 14 (0x2d7d0730) [serial = 14] [outer = 0x2d7d0540] ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 WARNING: Positioned frame that does not handle positioned kids; looking further up the parent chain: file nsCSSFrameConstructor.cpp, line 7803 ++DOMWINDOW == 15 (0x2d7d08f0) [serial = 15] [outer = 0x2c5bb940] ++DOMWINDOW == 16 (0x2d7d0ab0) [serial = 16] [outer = 0x2d7d0540] ... ###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6707 ###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6725 ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 ++DOMWINDOW == 17 (0x2d7d3830) [serial = 17] [outer = 0x2d7d01c0] WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file ./nsPresContext.h, line 1026 ###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6721 ###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6707 ###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6725 another warning from a separate session: WARNING: NS_ENSURE_TRUE(docEvent && target) failed: file nsContentUtils.cpp, line 3098 line from the makefile: # $FreeBSD: ports/www/firefox35/Makefile,v 1.179 2009/08/04 23:11:44 miwi Exp $ Firefox version: Mozilla Firefox 3.5.2, Copyright (c) 1998 - 2009 mozilla.org $ uname -a FreeBSD dbox 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May 1 08:49:13 UTC 2009 root@walker.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 $ kldstat Id Refs Address Size Name 1 29 0xc0400000 9fab28 kernel 2 1 0xc0dfb000 102c8 if_iwi.ko 3 1 0xc0e0c000 6fa8 snd_ich.ko 4 2 0xc0e13000 4a64c sound.ko 5 1 0xc0e5e000 2f33c iwi_ibss.ko 6 1 0xc0e8e000 30160 iwi_bss.ko 7 1 0xc0ebf000 2f4b0 iwi_monitor.ko 8 1 0xc0eef000 53e4 sem.ko 9 2 0xc0ef5000 6a45c acpi.ko 10 1 0xc0f60000 4f54 acpi_ibm.ko 11 1 0xc0f65000 ba94 cpufreq.ko 12 1 0xc3584000 7000 linprocfs.ko 13 1 0xc358b000 22000 linux.ko 14 1 0xc3831000 2000 blank_saver.ko /etc/make..conf optimization options: CFLAGS = -O2 -funroll-loops -pipe CPUTYPE?=native Knobs enabled in firefox35 config: DBUS NEWTAB DEBUG LOGGING Problem also occured with: DBUS NEWTAB OPTIMIZED_CFLAGS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?83ea7dd0908161648u12f4c720r9f69534118f4b75d>
