Leaks/Status Meetings/2007-October-2

From MozillaWiki
Jump to: navigation, search

« Back to Status Meetings


Finding plans

  • How do we best find more leaks.
    • Would extensions that cause GC/CC help?
  • Need a plan for finding leaks in extensions.

Fixing plans

  • People swamped? Need help?
  • Should we bring back the GC participant code we had before the CC landing to reduce impact of leaks?
  • Should we track known leaks better?
    • LeakingPages
    • Currently 292 filed bugs [1], probably lots that aren't valid any more.

Tools (fixing and finding)

  • Brendan's dynamic trace-malloc patch. What's the status?
  • Coverage, do we need more tools?
  • Documentation, what's the state of our current docs?
    • Sayrer's leak monitor, documented anywhere?

Status on found leak bugs

  • Are there leak bugs filed that are blocking further discovery?


  • How can we get help from the community?
  • Should we turn on some leak monitors in the nightlies?
  • Help weed out old invalid bugs?
  • Add options to reporter?
  • Help find leaks in extensions.

To Do

  • Get leak monitoring as an extension so that QA can test for leaks during litmus.
    • bug 394466 should fix OS leaks on linux.
    • AI:cbarrett Look into OS leaks on mac.
  • Improve tinderbox tests.
    • Need to measure leaked GDI/user/kernel handles on windows. Possibly show on tinderbox.
    • bug 374822 Need a windows tinderbox with leak numbers since OS leaks are lower there.
    • AI:sicking Do leak monitoring while running tinderbox tests.
      • We do want to run trace-refcnt, trace-malloc on reftest/mochitest. (bug 397724)
      • Ideally we'd shut down between each testcase to identify where leaks happen. Mostly useful until we reach 0, but would help with regressions too.
    • Want a separate test suite that tests for assertions, crashes, leaks. (bug 397725)
  • Important leak bugs:
    • bug 396368 Live connect leak the biggest one still not fixed.
    • bug 398292 now tracks bugs that make it difficult to find other leaks through fuzzing.

Action Items

  • AI:sicking Look into enabling trace-refcount, without the tracing part in nightlies.
  • AI:cbarrett Look inte OS leaks on mac.

Meeting notes

  • Would be nice to be able to do CC/GC on command, but more useful for finding crashers than finding leaks. Could be used to test if docshell/domwindows go away as they should.
    • Would be useful for diagnosing "leak" bugs like bug 393898
    • Perhaps an "#ifdef DEBUG" API exposed to web pages would make more sense than an extension
  • Finding leaks in extensions
    • Licenses is a big problem, many don't allow us to do testing.
    • Need help since testing extensions is going to be time intensive
    • Robert's automated leak finder would work for extension authors to run with their extensions, but is kind of tricky to run on Windows.
  • Fixing plans
    • People can file meta bugs for various efforts (fuzz leaks, Robert's automated leak finder).
    • Feels like we're doing ok without the GCParticipant code, so avoid adding back the complexity.
  • Tools
    • Please add to Performance:Leak_Tools. Also add links to more detailed documentation.
    • DEBUG_CC is very slow on windows. Ok on other platforms.
  • Bug status
    • Jesse uses bug 398292 to track bugs getting in the way of fuzz testing.
  • Tinderbox stuff
    • Should set up new machine running debug builds on reftest/mochitest.
    • We want to add a test suite that simply opens pages and tests for leaks/crash/assertions. This could probably run on the same machine as it needs to be running debug builds (bug 397725.
    • AI:sicking talk with build about setting up a Windows leak test machine (bug 374822.