Opened 11 years ago

Closed 9 years ago

Last modified 21 months ago

#29 closed defect (wontfix)

Gecko caching is pretty broken

Reported by: jg Owned by: blizzard
Priority: high Milestone:
Component: infrastructure Version:
Keywords: Cc: jondo
Blocked By: Blocking:
Deployments affected: Action Needed:
Verified: no


Right now, when you use tabs, the Gecko web browsing engine used in Firefox (and Sugar), forgets to ever free any images out of its cache. So this is an out and out bug that needs to be fixed. Federico Mena-Quintero wrote this up in his blog last fall.

Furthermore, Gecko keeps three copies of the data around: the compressed image, an uncompressed image in Gecko's address space, and another as a pixmap in the X server.

This is silly beyond belief. To begin with, if gecko is running locally, moving the image from gecko to X should be blindingly fast using Linux domain (or TCP) sockets.

Given modern machines, if we had fast image decompression code, even a copy in Gecko's address space uncompressed is probably pretty silly, and/or could be computed for a page or so backwards in a thread if one wants forward/back to be blindingly fast. Optimizing this decompression code so that one would be happy to throw away the uncompressed image would be a great improvement.

So people helping out the Mozilla project in this area would make a major improvement, not only for OLPC, but for all Linux desktop users. This situation is so bad I've seen Firefox eat over half a gigabyte of RAM (half in Firefox, half as pixmaps in the X server) in a single day's use, causing paging.

Change History (5)

comment:1 Changed 11 years ago by krstic

  • Milestone set to rev1 final

comment:2 Changed 11 years ago by jg

This is a firefox problem, that is very important to OLPC and to everyone who uses a Linux desktop. We encourage people interested in OLPC and interested in Firefox to help get it fixed.

Whether this is formally "leaking" memory or just profligate use is a difference that makes no difference to us; don't get hung up on semantics.


comment:3 Changed 10 years ago by jondo

  • Cc jondo added
  • Verified unset

comment:4 Changed 9 years ago by jg

  • Resolution set to wontfix
  • Status changed from new to closed

Looks like Federico has gotten a fire lit.

We'll watch it burn...

comment:5 Changed 21 months ago by Quozl

  • Milestone Update.1 deleted

Milestone Update.1 deleted

Note: See TracTickets for help on using tickets.