Closed
Bug 660905
Opened 14 years ago
Closed 8 years ago
Crash in js_XDRFunctionObject mainly with Load Tabs Progressively 1.6
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
WORKSFORME
| Tracking | Status | |
|---|---|---|
| firefox6 | + | --- |
People
(Reporter: marcia, Unassigned)
References
Details
(Keywords: crash, Whiteboard: [strong correlation w/ add-on "Load Tabs Progressively" 1.6])
Crash Data
Seen while reviewing crash stats. Seen across all versions. https://crash-stats.mozilla.com/report/list?signature=js_XDRFunctionObject%28JSXDRState*,%20JSObject**%29 to the reports.
https://crash-stats.mozilla.com/report/index/8223cda0-d6a1-4d0a-b44a-1f1a52110531
No correlations showing and very few comments.
Frame Module Signature [Expand] Source
0 mozjs.dll js_XDRFunctionObject js/src/jsfun.cpp:1864
1 mozjs.dll js_XDRScript js/src/jsscript.cpp:673
2 mozjs.dll js_CloneScript js/src/jsscript.cpp:1841
3 mozjs.dll js_CloneFunctionObject js/src/jsfun.cpp:2788
4 mozjs.dll JSObject::methodReadBarrier js/src/jsobjinlines.h:223
5 mozjs.dll js::StackFrame::getValidCalleeObject js/src/jsfun.cpp:1488
6 mozjs.dll fun_getProperty js/src/jsfun.cpp:1629
7 mozjs.dll js::Shape::get js/src/jsscopeinlines.h:283
8 mozjs.dll js_GetPropertyHelper js/src/jsobj.cpp:5411
9 mozjs.dll InlineGetProp js/src/methodjit/StubCalls.cpp:1883
10 mozjs.dll js::mjit::stubs::GetProp js/src/methodjit/StubCalls.cpp:1895
11 mozjs.dll JSCompartment::wrap js/src/jscompartment.cpp:358
12 mozjs.dll js::mjit::EnterMethodJIT js/src/methodjit/MethodJIT.cpp:685
13 mozjs.dll js::mjit::JaegerShot js/src/methodjit/MethodJIT.cpp:732
14 mozjs.dll js::RunScript js/src/jsinterp.cpp:610
15 mozjs.dll js::Invoke js/src/jsinterp.cpp:694
16 mozjs.dll js::ExternalInvoke js/src/jsinterp.cpp:816
17 mozjs.dll JS_CallFunctionValue js/src/jsapi.cpp:5080
18 xul.dll nsXPCWrappedJSClass::CallMethod js/src/xpconnect/src/xpcwrappedjsclass.cpp:1662
19 xul.dll nsXPCWrappedJS::CallMethod js/src/xpconnect/src/xpcwrappedjs.cpp:586
20 xul.dll PrepareAndDispatch xpcom/reflect/xptcall/src/md/win32/xptcstubs.cpp:114
21 xul.dll SharedStub xpcom/reflect/xptcall/src/md/win32/xptcstubs.cpp:141
22 xul.dll nsBrowserStatusFilter::OnStateChange toolkit/components/statusfilter/nsBrowserStatusFilter.cpp:183
23 xul.dll nsDocLoader::FireOnStateChange uriloader/base/nsDocLoader.cpp:1339
24 xul.dll nsDocLoader::OnStartRequest uriloader/base/nsDocLoader.cpp:565
25 xul.dll nsLoadGroup::AddRequest netwerk/base/src/nsLoadGroup.cpp:595
26 xul.dll imgLoader::LoadImage modules/libpr0n/src/imgLoader.cpp:1723
27 xul.dll NS_CheckContentLoadPolicy obj-firefox/dist/include/nsContentPolicyUtils.h:221
28 xul.dll xul.dll@0xe0d3fb
29 xul.dll nsCSSValue::Image::Image layout/style/nsCSSValue.cpp:1324
30 xul.dll nsCSSValue::StartImageLoad layout/style/nsCSSValue.cpp:551
31 xul.dll TryToStartImageLoad layout/style/nsCSSDataBlock.cpp:148
32 xul.dll TryToStartImageLoad layout/style/nsCSSDataBlock.cpp:140
33 xul.dll nsCSSCompressedDataBlock::MapRuleInfoInto layout/style/nsCSSDataBlock.cpp:190
34 xul.dll nsCSSFrameConstructor::ConstructBlock layout/base/nsCSSFrameConstructor.cpp:10675
35 xul.dll nsRuleNode::WalkRuleTree layout/style/nsRuleNode.cpp:1811
36 xul.dll nsCSSFrameConstructor::ConstructFramesFromItem layout/base/nsCSSFrameConstructor.cpp:5453
37 xul.dll nsCSSFrameConstructor::ConstructFramesFromItemList layout/base/nsCSSFrameConstructor.cpp:9486
38 xul.dll nsCSSFrameConstructor::ProcessChildren layout/base/nsCSSFrameConstructor.cpp:9626
39 xul.dll nsCSSFrameConstructor::ConstructBlock layout/base/nsCSSFrameConstructor.cpp:10672
40 xul.dll nsCSSFrameConstructor::ConstructFrameFromItemInternal layout/base/nsCSSFrameConstructor.cpp:3708
41 xul.dll nsCSSFrameConstructor::ConstructFramesFromItem layout/base/nsCSSFrameConstructor.cpp:5476
42 xul.dll nsCSSFrameConstructor::ConstructFramesFromItemList layout/base/nsCSSFrameConstructor.cpp:9486
43 xul.dll nsCSSFrameConstructor::ContentAppended layout/base/nsCSSFrameConstructor.cpp:6673
44 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6328
45 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
46 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
47 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
48 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
49 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
50 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
51 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
52 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
53 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
54 xul.dll nsCSSFrameConstructor::CreateNeededFrames layout/base/nsCSSFrameConstructor.cpp:6338
55 xul.dll PresShell::FlushPendingNotifications layout/base/nsPresShell.cpp:4822
56 xul.dll nsDocument::FlushPendingNotifications content/base/src/nsDocument.cpp:6376
57 xul.dll nsDocument::FlushPendingNotifications content/base/src/nsDocument.cpp:6371
58 xul.dll nsGenericElement::GetPrimaryFrame content/base/src/nsGenericElement.cpp:3777
59 xul.dll nsGenericElement::GetStyledFrame content/base/src/nsGenericElement.cpp:1569
60 xul.dll nsGenericHTMLElement::GetOffsetRect content/html/content/src/nsGenericHTMLElement.cpp:511
61 xul.dll nsGenericHTMLElement::GetOffsetHeight content/html/content/src/nsGenericHTMLElement.cpp:654
62 xul.dll nsIDOMNSHTMLElement_GetOffsetHeight obj-firefox/js/src/xpconnect/src/dom_quickstubs.cpp:21918
63 mozjs.dll js::Shape::get js/src/jsscopeinlines.h:283
64 mozjs.dll js_GetPropertyHelper js/src/jsobj.cpp:5411
65 mozjs.dll js::Interpret js/src/jsinterp.cpp:4095
66 mozjs.dll js::mjit::JaegerShot js/src/methodjit/MethodJIT.cpp:732
67 mozjs.dll js::RunScript js/src/jsinterp.cpp:613
68 mozjs.dll js::Invoke js/src/jsinterp.cpp:694
69 mozjs.dll js_fun_apply js/src/jsfun.cpp:2205
70 mozjs.dll js::Interpret js/src/jsinterp.cpp:4685
71 xul.dll nsHttpChannel::QueryInterface netwerk/protocol/http/nsHttpChannel.cpp:3552
72 mozjs.dll js::RunScript js/src/jsinterp.cpp:613
73 mozjs.dll js::Invoke js/src/jsinterp.cpp:694
74 mozjs.dll js::ExternalInvoke js/src/jsinterp.cpp:816
75 mozjs.dll JS_CallFunctionValue js/src/jsapi.cpp:5080
76 xul.dll nsJSContext::CallEventHandler dom/base/nsJSEnvironment.cpp:1900
77 xul.dll nsGlobalWindow::RunTimeout dom/base/nsGlobalWindow.cpp:9211
78 xul.dll nsGlobalWindow::TimerCallback dom/base/nsGlobalWindow.cpp:9556
79 xul.dll nsTimerImpl::Fire xpcom/threads/nsTimerImpl.cpp:424
80 xul.dll nsTimerEvent::Run xpcom/threads/nsTimerImpl.cpp:520
81 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:618
82 xul.dll mozilla::ipc::MessagePump::Run ipc/glue/MessagePump.cpp:134
83 xul.dll xul.dll@0xb625d7
84 xul.dll MessageLoop::RunHandler ipc/chromium/src/base/message_loop.cc:202
85 xul.dll xul.dll@0x36e58f
86 xul.dll MessageLoop::Run ipc/chromium/src/base/message_loop.cc:176
87 xul.dll nsCSSExpandedDataBlock::nsCSSExpandedDataBlock layout/style/nsCSSDataBlock.cpp:324
88 xul.dll nsBaseAppShell::Run widget/src/xpwidgets/nsBaseAppShell.cpp:189
89 xul.dll nsAppShell::Run widget/src/windows/nsAppShell.cpp:249
| Reporter | ||
Updated•14 years ago
|
OS: All → Windows XP
Hardware: All → x86
Comment 1•14 years ago
|
||
Looks like a crash at http://hg.mozilla.org/releases/mozilla-aurora/file/155dea3ad17f/js/src/jsfun.cpp#l1864 due to fun being null.
| Assignee | ||
Updated•14 years ago
|
Crash Signature: [@ js_XDRFunctionObject(JSXDRState*, JSObject**) ]
Comment 3•14 years ago
|
||
This seems to have risen in volume for FF6. We had about 85 of these yesterday for 6.0b1 as compared to 32 in one week for FF5. Probably worth some investigation since there might be a regression.
Updated•14 years ago
|
Comment 4•14 years ago
|
||
Igor, any idea?
Comment 5•14 years ago
|
||
(In reply to comment #4)
> Igor, any idea?
No, I will look into it the next weak.
Comment 6•14 years ago
|
||
There's a strong correlation with Load Tabs Progressively 1.6:
98% (58/59) vs. 0% (109/23789) loadTabsProgressively@ithinc.cn
Updated•14 years ago
|
Crash Signature: [@ js_XDRFunctionObject(JSXDRState*, JSObject**) ] → [@ js_XDRFunctionObject(JSXDRState*, JSObject**) ] [@ js_XDRFunctionObject ]
Summary: Firefox Crash [@ js_XDRFunctionObject(JSXDRState*, JSObject**) ] → Crash in js_XDRFunctionObject
Updated•14 years ago
|
OS: Windows XP → All
Updated•14 years ago
|
Whiteboard: [strong correlation w/ add-on "Load Tabs Progressively" 1.6]
Updated•14 years ago
|
Crash Signature: [@ js_XDRFunctionObject(JSXDRState*, JSObject**) ] [@ js_XDRFunctionObject ] → [@ js_XDRFunctionObject(JSXDRState*, JSObject**) ]
[@ js_XDRFunctionObject ]
Comment 8•14 years ago
|
||
Does this mean we should be blocking something? Igor, have you had time to look into this yet?
Comment 9•14 years ago
|
||
(In reply to comment #8)
> Does this mean we should be blocking something? Igor, have you had time to
> look into this yet?
I am back from vacation and will look at it today.
Comment 10•14 years ago
|
||
It's now only #15 top browser crasher in 6.0b2.
Summary: Crash in js_XDRFunctionObject → Crash in js_XDRFunctionObject mainly with Load Tabs Progressively
| Reporter | ||
Comment 11•14 years ago
|
||
I installed https://addons.mozilla.org/en-US/firefox/addon/load-tabs-progressively/ and was able to reproduce this on FF 5.0.1 running on 10.7.
Comment 12•14 years ago
|
||
Igor, is it their problem or our problem? Can we work with them to get an update for this top crasher?
Comment 13•14 years ago
|
||
(In reply to comment #12)
> Igor, is it their problem or our problem? Can we work with them to get an
> update for this top crasher?
Comment 1 is right on that is a null dereference with null coming from JSObject::private in a function object that represents a compiled function stored in a script. This must be a bug that triggered JSObject::setPrivate(null) on the function object. But we never do that intentionally and those function objects should not be manipulated or accessed by scripts.
So I suppose there is a bug in the addon that triggered that.
| Reporter | ||
Comment 14•14 years ago
|
||
https://addons.mozilla.org/en-US/firefox/addon/load-tabs-progressively/developers doesn't have any contact information for the developer - who can help us get that?
Comment 15•14 years ago
|
||
Adding the add-on developer to the CC list.
Comment 16•14 years ago
|
||
I reverted the compatibility information for version 1.6 to maxVersion = 5.*. It was us who automatically bumped the add-on compatibility to 6.* and 7.*. The add-on does lots of monkey patching in the tab loading code; it's likely that something changed there that broke the add-on badly.
I also noticed versions 1.6.1pre and 1.6.1pre2 on AMO that have higher compatibility by default and have beta status. Is there any data about these versions crashing as well?
Comment 17•14 years ago
|
||
(In reply to Marcia Knous [:marcia] from comment #11)
> I installed
> https://addons.mozilla.org/en-US/firefox/addon/load-tabs-progressively/ and
> was able to reproduce this on FF 5.0.1 running on 10.7.
Could you please provide the steps to reproduce it? Thanks.
Comment 18•14 years ago
|
||
(In reply to Igor Bukanov from comment #13)
> (In reply to comment #12)
> > Igor, is it their problem or our problem? Can we work with them to get an
> > update for this top crasher?
>
> Comment 1 is right on that is a null dereference with null coming from
> JSObject::private in a function object that represents a compiled function
> stored in a script. This must be a bug that triggered
> JSObject::setPrivate(null) on the function object. But we never do that
> intentionally and those function objects should not be manipulated or
> accessed by scripts.
>
> So I suppose there is a bug in the addon that triggered that.
Thank you for your insights. LTP changes little with Firefox upgrading from 3.6 to 4.0+. Could arguments.callee.caller trigger that? Otherwise I suppose it's some Firefox change leads to that. I'm using LTP mainly with Firefox 5.0 and I've never encountered this crash.
LTP 1.6.1pre2 removed the call to arguments.callee.caller. I'm also interested in any data about this version.
| Reporter | ||
Comment 19•14 years ago
|
||
I was just testing Firefox 6.0 and noticed I could install the Load Tabs Progressively Addon (version 1.6). Although it notes that it will be disabled, after restart it is not shown as disabled.
The same thing happens with Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0) Gecko/20100101 Firefox/7.
I noticed that this signature is in the #9 top crash in the early 6.0 data, that is why I was testing it.
| Reporter | ||
Comment 20•14 years ago
|
||
I just hit this deleting emails in Gmail using Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:6.0) Gecko/20100101 Firefox/6.0. I did have the Load Tabs extension installed in my profile. The crash comments do mention crashing while deleting emails and performing other Gmail operations.
Comment 21•14 years ago
|
||
never had a crash with this extension, on any version of firefox.
Comment 22•14 years ago
|
||
I can reproduce this crash every time (100% occurrence) on Facebook.com when attempting to play a YouTube video from the homepage News Feed. With Load Tabs Progressively the crash does not occur, but happens again when I re-enable the Add-on. This happens with LTP as the only Add-on installed.
Firefox 6, Win7 32-bit.
Comment 23•14 years ago
|
||
Its probably caused by that old version you're using, 1.6 was never meant to be used on anything over firefox 4,
1.61 is the latest, i've been using the pre2 version up till today but am updating to the final now
https://addons.mozilla.org/en-US/firefox/addon/load-tabs-progressively/versions/1.6.1
Updated•14 years ago
|
Summary: Crash in js_XDRFunctionObject mainly with Load Tabs Progressively → Crash in js_XDRFunctionObject mainly with Load Tabs Progressively 1.6
Comment 24•14 years ago
|
||
alright, done that, tested a youtube video in the facebook news feed.
no crash.
I do recall crashes in 5.0b however which was resolved by updating all my extensions to the at the time latest dev versions, which LTP was at 1.61pre1 at the time.
Comment 25•14 years ago
|
||
(In reply to Danial Horton from comment #23)
> Its probably caused by that old version you're using, 1.6 was never meant to
> be used on anything over firefox 4,
>
> 1.61 is the latest, i've been using the pre2 version up till today but am
> updating to the final now
1.6.1pre2 or 1.6.1 doesn't include a fix against this, but I'm interested to know if it plays differently than 1.6.
Comment 26•14 years ago
|
||
Well, i haven't had a crash since 5.0b that i could blame on extensions.
Comment 27•14 years ago
|
||
(In reply to Martin Poirier from comment #22)
> I can reproduce this crash every time (100% occurrence) on Facebook.com when
> attempting to play a YouTube video from the homepage News Feed. With Load
> Tabs Progressively the crash does not occur, but happens again when I
> re-enable the Add-on. This happens with LTP as the only Add-on installed.
>
> Firefox 6, Win7 32-bit.
Can you post the direct url of the video if a sign-in is not needed? You may also update LTP to 1.6.1 to have another test. Thanks.
Comment 28•14 years ago
|
||
Obviously I meant "Without Load Tabs Progressively the crash does not occur..." and not "With Load Tabs Progressively...".
The links I tested all seem to require login, but I'll try to hunt one down that does not require it. However, oddly enough I am not getting the crash with v1.6.1 when performing the exact same steps.
Comment 29•14 years ago
|
||
Thanks, then 1.6.1 should have solved the problem. Can you have a test with Version 1.6.1pre - https://addons.mozilla.org/firefox/addon/load-tabs-progressively/versions/1.6.1pre and Version 1.6.1pre2 - https://addons.mozilla.org/firefox/addon/load-tabs-progressively/versions/1.6.1pre2 respectively? It will help to identify the problem.
Comment 30•14 years ago
|
||
Crashes with 1.61.pre1 when trying to open a flash video in the facebook news feed
No crash with 1.61.pre2
Comment 31•14 years ago
|
||
@Moz devs,
can someone get a wire to one of the Add-on's reviewers and get 1.6.1 verified so everyone can get the update notification.
| Reporter | ||
Comment 32•14 years ago
|
||
Jorge: I assume I need an addons login to be able to get the 1.6.1 version?
| Reporter | ||
Comment 33•14 years ago
|
||
NM - found them at https://addons.mozilla.org/en-US/firefox/addon/load-tabs-progressively/versions/
(In reply to Marcia Knous [:marcia] from comment #32)
> Jorge: I assume I need an addons login to be able to get the 1.6.1 version?
Comment 34•14 years ago
|
||
Version 1.6.1 has been reviewed and approved for the public. It should take a couple of days for the stats to show the impact of the update.
| Assignee | ||
Updated•11 years ago
|
Assignee: general → nobody
Comment 35•8 years ago
|
||
I'm marking this bug as WORKSFORME as bug crashlog signature didn't appear from a long time (over half year) in Firefox (except some obsolete Fx <11).
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•