Bug 20587 - WebKit eats CPU on http://uk.sun.com/tryandbuy/products.jsp
Summary: WebKit eats CPU on http://uk.sun.com/tryandbuy/products.jsp
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Nobody
URL: http://uk.sun.com/tryandbuy/products.jsp
Keywords: NeedsReduction
Depends on:
Blocks:
 
Reported: 2008-09-01 03:34 PDT by Ceri Davies
Modified: 2018-06-26 13:01 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ceri Davies 2008-09-01 03:34:09 PDT
Visiting http://uk.sun.com/tryandbuy/products.jsp causes Safari to eat CPU until you kill it.
Comment 1 Matt Lilek 2008-09-02 15:48:00 PDT
Definitely confirmed with r36029 debug build on Leopard - it ate into the second core of my machine and the default sample from Activity Monitor was over 100 MB:

Total number in stack (recursive counted multiple, when >=5):
        115201       WebCore::RenderBlock::isSelfCollapsingBlock() const
        7234       WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout(WebCore::RenderObject*)
        5980       WebCore::RenderBlock::layoutBlock(bool)
        5979       WebCore::RenderBlock::layout()
        5899       WebCore::RenderBlock::layoutBlockChildren(bool, int&)
        452       WebCore::RenderBlock::collapseMargins(WebCore::RenderObject*, WebCore::RenderBlock::MarginInfo&, int)
        450       WebCore::Element::recalcStyle(WebCore::Node::StyleChange)
        446       WebCore::RenderBlock::calcPrefWidths()
        445       WebCore::RenderBox::minPrefWidth() const
        444       WebCore::RenderBlock::calcBlockPrefWidths()
Comment 2 mitz 2008-09-02 22:17:52 PDT
(In reply to comment #0)
> Visiting http://uk.sun.com/tryandbuy/products.jsp causes Safari to eat CPU
> until you kill it.

When I tried it, CPU consumption was high, but closing the page stopped it immediately. I did not have to kill the Safari process.
Comment 3 mitz 2008-09-02 22:40:45 PDT
Some repaint-only style property inherited by the list markers (opacity, I think) is animated. But that results in a relayout every time (and relayout is quite expensive because the DOM is crazy-deep and so is the render tree, for reasons that might warrant separate investigation) because RenderListMarker::updateMargins() mutates layout properties of the style.
Comment 4 Philippe Normand 2018-06-26 13:01:54 PDT
Now redirects to https://www.oracle.com/uk/index.html which keeps the CPU alive ;)