Closed Bug 832796 Opened 13 years ago Closed 13 years ago

Crash in mozalloc_abort | NS_DebugBreak_P | mozilla::net::PNeckoChild::Write when viewing articles on wired.com

Categories

(Core :: Networking, defect)

ARM
Gonk (Firefox OS)
defect
Not set
critical

Tracking

()

VERIFIED WORKSFORME
blocking-b2g -

People

(Reporter: tarek, Unassigned)

References

()

Details

(Keywords: crash, regression, reproducible, Whiteboard: [b2g-crash])

Crash Data

Attachments

(4 files)

I was able to reproduce this on my phone (I am on the current up-to-date beta) I just hope this can be reproduced by others, even if that website changes. Let me know if there are things I can do to narrow it down 1/ open firefox 2/ visit http://wired.com 3/ scroll down - when you reach the 4th big image, the OS crashes and restarts...
Can you provide the crash ID? I think it's in the about:crashes page of the browser.
Severity: normal → critical
blocking-b2g: --- → tef?
Flags: needinfo?(tarek)
Keywords: crash, stackwanted
OS: Mac OS X → Gonk (Firefox OS)
Hardware: x86 → ARM
Whiteboard: [b2g-crash]
That page does not load anything. The page seem empty. I crashed it again right now - I clicked on the "report" button on the "firefox os just crashed" message. Is there a way to get that report id in another place ?
Flags: needinfo?(tarek)
I have my IP if this helps digging it in socorro ?
(In reply to Tarek Ziadé (:tarek) from comment #2) > Is there a way to get that report id in another place ? Settings > Improve Firefox OS > Crash Data. (In reply to Tarek Ziadé (:tarek) from comment #3) > I have my IP if this helps digging it in socorro ? IP addresses are not collected for privacy issues.
Flags: needinfo?(tarek)
I don't have a "Crash Data" there. Just a "Crash report" where I can configure if the reports are sent. I am on Boot2Gecko 1.0.0-prerelease. I mounted the media storage but did not find those there
Flags: needinfo?(tarek)
Flags: needinfo?(tarek)
Assignee: nobody → dale
blocking-b2g: tef? → tef+
Keywords: regression
Chris, Justin, according to Dale, this could be a platform issue. Could you investigate ?
Flags: needinfo?(justin.lebar+bug)
Flags: needinfo?(jones.chris.g)
Sorry I had not the time yet to build the logcat - will do that tomorrow. Notice that this is not happening anymore on wired.com since they changed their homepage.
Flags: needinfo?(tarek)
Renoming because I do not think we can block on an issue which we cannot reproduce.
blocking-b2g: tef+ → tef?
Flags: needinfo?(justin.lebar+bug)
Thanks Justin, I was just going to say the same thing. I've not been able to reproduce this and we're unable to act on it without reliable STR. Marked QA wanted in case they can reproduce but it's likely more information is needed.
Keywords: qawanted
I didn't get a OS restart crash, but I definitely got a tab crash eventually after playing around with some of the wired.com articles.
(In reply to Jason Smith [:jsmith] from comment #11) > Created attachment 705229 [details] > Logcat > > I didn't get a OS restart crash, but I definitely got a tab crash eventually > after playing around with some of the wired.com articles. I should note that I mean to say that the tab abnormally stopped loading content. No crash report on this one though as a result.
Well this doesn't look friendly: 01-22 20:32:15.636: I/Gecko(107): NeckoParent::AllocPHttpChannel: FATAL error: missing required PBrowser argument: KILLING CHILD PROCESS 01-22 20:32:15.636: I/Gecko(107): ###!!! [Parent][AsyncChannel] Error: Value error: message was deserialized, but contained an illegal value 01-22 20:32:15.636: I/Gecko(107): ###!!! [Parent][AsyncChannel] Error: Route error: message sent to unknown actor ID 01-22 20:32:15.646: I/Gecko(107): NeckoParent::AllocPHttpChannel: FATAL error: missing required PBrowser argument: KILLING CHILD PROCESS 01-22 20:32:15.646: I/Gecko(107): ###!!! [Parent][AsyncChannel] Error: Value error: message was deserialized, but contained an illegal value 01-22 20:32:15.666: I/Gecko(107): ###!!! [Parent][AsyncChannel] Error: Channel error: cannot send/recv Something blew sky high in the necko world.
And...this time I got a crash! Crash report coming...
Attachment #705229 - Attachment description: Logcat → Logcat - Abnormal Tab Termination, No Crash in Browser
Yup, this is most definitely something blowing up in the necko world: https://crash-stats.mozilla.com/report/index/bp-e85bfc2e-a013-417d-ae9e-3f12f2130123 Your crash report as requested!
Component: Gaia::Browser → Networking
Product: Boot2Gecko → Core
QA Contact: nhirata.bugzilla
Version: unspecified → Trunk
Crash Signature: [@ mozalloc_abort | NS_DebugBreak_P | mozilla::net::PNeckoChild::Write]
Pretty easy to reproduce too: 1. Go to wired.com in the browser 2. View an article 3. Press the back button to return back to previous page 4. If you haven't crashed yet, try it with another article with steps #2 and #3 Seems to be quite to crash going through the about steps.
Summary: OS Crash when visiting wired.com → Crash in mozalloc_abort | NS_DebugBreak_P | mozilla::net::PNeckoChild::Write when viewing articles on wired.com
Unassigning myself since I am not really the best person to be debugging necko crashes
Assignee: dale → nobody
A great Jason, thanks a lot! I was desesperate because I could not reproduce it this morning and the logcat history was not going in the past enough.
Crash Signature: [@ mozalloc_abort | NS_DebugBreak_P | mozilla::net::PNeckoChild::Write] → [@ mozalloc_abort | NS_DebugBreak_P | mozilla::net::PNeckoChild::Write ]
We've probably got at least two bugs here: > required PBrowser argument: KILLING CHILD PROCESS This means code *using* an HTTP channel was misbehaving by not passing security info (i.e. not setting a TabChild as the channel callbacks). Not a necko bug. We need to find the offending client code and fork a bug to fix it. Let's keep this bug open for the parent process crash. That's either a necko or IPDL bug. It looks to me like a websockets issue: the crash report shows a (child-side) crash while trying to open a new WebSocket during the onclose() method of another websocket. I suspect this might be bug 765738 (see also bug 602286). We then (at end of the log) see a parent error: "[Parent][AsyncChannel] Error: Channel error: cannot send/recv" (which winds up calling OnProcessingError, which generally turns into a parent-side RUNTIMEABORT). One likely culprit is if we don't check the IPDL connection for liveness on the parent before sending an IPDL message. I'll look into this in a debugger tomorrow. Alas it doesn't seem to happen on B2G desktop.
Assignee: nobody → jduell.mcbugs
Flags: needinfo?(jones.chris.g)
The error being demonstrated in the crash report is interesting; we're apparently trying to pass a PBrowser actor that is no longer alive as part of the PWebSocket constructor message. Also, when I reproduce crashes in the debugger, all I ever see is a SIGTERM in the child, then the chrome process stops showing any homescreen content.
Okay, but all of these crashes are in the /child/ process, right? I don't think we should block on child process crashes at this point, either, because it's trivial to crash the child process (just OOM it). If OTOH we can crash the whole phone, as described earlier, that would be much more serious.
(In reply to Justin Lebar [:jlebar] from comment #22) > Okay, but all of these crashes are in the /child/ process, right? > > I don't think we should block on child process crashes at this point, > either, because it's trivial to crash the child process (just OOM it). > > If OTOH we can crash the whole phone, as described earlier, that would be > much more serious. I actually have a different rationale why this actually is important to fix for v1 (as in blocking), but I can't mention over bugzilla. I'll mention in triage and email you and few others.
Oh and btw - I confirmed that I can also get this to crash in the app version of this app. https://marketplace.firefox.com/app/wiredcom
tef+ since this a consistent instability issue in a top app, but we'd also be OK with a wired-specific server-side workaround instead of an in-product fix (as long as we think this issue won't be more prevalent post-release).
blocking-b2g: tef? → tef+
tracking-b2g18: --- → +
Broke out bug 833935 for the non-necko issue mentioned in comment 20.
Jsmith: can you still see the OS crash? I can't repro it on my debug phone build, nor on my desktop B2G build, using both wired.com in the browser and the wiredcom app. Jsmith, can you still see this? Maybe I need to use a non-debug build. Even the app crash is fairly rare for me.
(In reply to Jason Duell (:jduell) from comment #28) > Jsmith: can you still see the OS crash? I can't repro it on my debug phone > build, nor on my desktop B2G build, using both wired.com in the browser and > the wiredcom app. Jsmith, can you still see this? Maybe I need to use a > non-debug build. > > Even the app crash is fairly rare for me. Actually, I just managed to pull off a OS restart crash. Not easy, but possible. More info coming...
Okay, this just gets more weird. The OS restart crash might be a different bug: https://crash-stats.mozilla.com/report/index/bp-5583f8e9-3aa5-4e62-a84f-101f42130124 This looks like something blowing up in the Graphics department. Should I break that off into a different bug and keep this one as the necko crash?
jsmith: Yeah, let's fork the graphics crash and keep this open in case there really is a necko parent crash here. But I can't repro it so far, so this may be WORKSFORME unless someone can see it again, ideally with STR. Do we want to flag qa-wanted, or do you think you've already tested enough?
I'll try again, but the repro steps that just got me a crash was the following: 1. Connect on a 2G connection (EDGE) 2. Go to wired.com 3. Select the first image to go to the first article 4. Hit the back button after it finishes loading Result - crash. Seems to crash reliably on my 1/24 build.
Hmm...so digging into this for a while, it seems to vary in reproducibility. Sometimes I can consistently reproduce it with the steps above a few times in a row, and then I can't reproduce it at all for a while.
Marcia and I dug into even further. Looks like this only reproduces on a data connection. Marcia & I couldn't reproduce this on a wifi connection at all.
I am going to try again on data only to see if I can get a reliable scenario
Tried with data connection and crashed phone once. Alas, not while I had my debugger attached. And now I've tried a bunch and it's not happening again. I'll keep trying--let me know if someone finds a reliable STR. doesn't help that wired.com seems to take up 100% of cpu forever in my debug build. Also I find that when I try to go back from an article, it winds up just going back to the same article. meh :(
It's likely that this will no longer happen as of bug 833935 being fixed, but only because child will behave better. I'm going to keep trying to catch it in a pre-833935 build as I don't like parent crash opportunities to be present :)
(In reply to Jason Duell (:jduell) from comment #38) > It's likely that this will no longer happen as of bug 833935 being fixed, > but only because child will behave better. I'm going to keep trying to > catch it in a pre-833935 build as I don't like parent crash opportunities to > be present :) Sounds like we should no longer block on this then, right?
blocking-b2g: tef+ → tef?
Well, there's still a way to somehow crash the parent if the child process were to be compromised. Not a very obvious way, though. If we verify that as of this morning's landing we can no longer repro wired.com crashing (in either parent or child) then yes, I'd suggest we remove this as a blocker.
Keywords: qawanted
QA Contact: jsmith
Please renominate if you reproduce the crash again.
blocking-b2g: tef? → -
tracking-b2g18: + → ---
I've been unable to replicate this parent crash despite browsing for quite a while on wired.com with a data (non-wifi) connection and an older build (pre-bug 833935 landing). I'm going to mark WORKSFORME for now.
Assignee: jduell.mcbugs → nobody
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WORKSFORME
lgtm on 1/30 build.
Status: RESOLVED → VERIFIED
Keywords: qawanted
I just crashed Firefox OS again on wired.com home page and was able to get a full log. incoming
Status: VERIFIED → REOPENED
Resolution: WORKSFORME → ---
That's with the 31.01 update. I am able to reproduce it on every try
There's already a bug on the wired.com homepage crash. That's bug 834435.
Status: REOPENED → RESOLVED
Closed: 13 years ago13 years ago
Resolution: --- → FIXED
Status: RESOLVED → VERIFIED
Resolution: FIXED → WORKSFORME
sorry I did not pay attention to that
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: