100% CPU usage with stuck renderer

185 views
Skip to first unread message

armdev

unread,
Jul 30, 2012, 3:01:16 PM7/30/12
to chromi...@chromium.org
Hello All,

I have been experiencing a very strange issue that I saw once with Chromium 16 and now is showing up on Chromium 20. This happens on an ARM platform.

Build: Chromium 20.0.1132.47
OS: Linux 3.4.0 w/ Gnome
Processor: OMAP 4460
Symptom: Launch Chromium with any page or even default page. Page should load, instead nothing renders on content area. CPU usage is 100% for the renderer and strace shows a log repeating a bunch of read and clock_gettime messages. gdb in backtrace shows MessageLoop::DoDelayedWork or tracked_objects::TrackedTime::Now()

I have attached strace logs for both with and without single process switch. I terminated Chromium from the command line. There was no crash and there is no log output even after enabling logging with full verbosity.

Also a note that this seems like a very wierd timing bug or something since this had shown up on Chromium 16 too when we were working on getting 16 on our platform few months back. But then when we started debugging by adding logs, etc. the bug did not happen so we could not really narrow down the issue.

Any pointers on how to debug, or a workaround would really help. We have a product shipping out with Chromium and we are stuck at the moment.
I am hoping to solicit the community's attention. It may also help other environments which have for some reason not yet been bitted by this bug.
chromium-strace-single-process.txt
chromium-strace.txt
Message has been deleted

armdev

unread,
Jul 30, 2012, 7:01:51 PM7/30/12
to chromi...@chromium.org
Anyone ? Just looking for some key functions to trace to see where the issue is. I cannot make debug build for this platform since debug builds are huge but I can add logs..
Btw, I did run gtkparasite and was able to see all the widgets were proper..i.e. the tab container and the web contents view widget, etc.
The browser chrome in of itself is ok, i.e. omnibox, find bar, etc.

Eric Roman

unread,
Jul 30, 2012, 8:15:32 PM7/30/12
to crar...@gmail.com, chromi...@chromium.org
What are the specific callstacks you are seeing when the renderer hang happens? If you are in "MessageLoop::DoDelayedWork" then it sounds like there might be a rogue timer posting many deferred tasks. Try taking a look at the specific task that is being run in DoDelayedWork -- i.e. pending_task.posted_from.file_name(), pending_task.posted_from.function_name().

If things aren't completely hung, you may also be able to load about:profiler to see if there are any hot tasks.

--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev

Reply all
Reply to author
Forward
0 new messages