Platform/2010-11-30

From MozillaWiki
Jump to navigation Jump to search

« previous week | index | next week »

Notices / Schedule

Blocker Report

Firefox 4 Beta

Firefox Development

(from our goals):

  • [ON TRACK] Feature complete Firefox 4
    • [DONE] Switch to Tab
    • [DONE] App Tabs - Scope for 4.0 reduced (non-global), near feature complete.
    • [DONE] Extension Manager - Bug list is converging, still a lot of work to do.
    • [DONE] Web Console
    • [ON TRACK] Notification UI - Geo and EM notifications done, http auth next.
    • [ON TRACK] New Theme - Windows and Mac good, Linux catching up now
    • [DONE] TabCandy Panorama
    • [AT RISK] Silent updates on Windows
    • [DROPPED] Inspector
    • [DROPPED] Account Manager - WIP patches posted, but we can't contain the review load and code risk.
  • [AT RISK] Dirty profile startup within 20% of clean profile startup (modulo extensions, plugins; on windows)
    • Current status: Lots of data has been collected and analyzed, but no solid conclusions have shaken out.
    • Details page
    • Shawn has an updated blog post. Read it for more info.
    • Bugs on file that help:
      • Excessive cookie i/o bug bug 572223 (fixed)
      • Session Restore negatively impacts startup time based on the number of tabs loaded bug 582005
      • Suboptimal SQLite page size bug 416330 (fixed)
      • Provide a global VACUUM component bug 541373


Platform

(there is a team-by-team goals breakdown, as well)

  • [DONE] Javascript performance near or even with Chrome 5 on their benchmarks (within 20% on SS, 30% on V8), with substantial wins on our benchmarks. (Windows, in-browser.)
  • [DONE] Hardware acceleration of video and other HTML and SVG content, as well as user interface, on by default for compatible hardware on all Tier-1 desktop and mobile platforms.
  • [DONE] Fully support the WebGL 1.0 spec, with support turned on by default in a Firefox 4 beta on platforms that support OpenGL or OpenGL ES.
  • [MISSED] security: zero reproducible high/crit > 30 days
  • [DONE] Support multi-process Fennec.
  • [DONE] Support Jetpacks running in separate processes and never blocking the Fennec UI. NOTE: jetpack team hasn't actually integrated this code yet, but it works in small test environments.


Tree Management

Roundtable

  • Infallible malloc (added to agenda by Jesse)
    • The problem, which has only recently come to light:
      • We haven't actually made malloc infallible yet. We already made new infallible for Firefox 4, but many data structures (including arrays and strings) can still misbehave on OOM because malloc can still return NULL.
      • Many exploitable OOM bugs are in system libraries rather than Firefox itself. Replacing malloc may be the only way for us to work around all of these bugs.
      • Security researchers have been reporting many OOM bugs lately.
        • We often can't reproduce what they see because we OOM slightly earlier or later.
        • This is a recipe for embarrassment when "old" testcases find "new" bugs, as Alex Miller discovered.
    • The plan of record:
    • Proposal:
      • Make malloc infallible
      • Fix too-large-allocation crashes (distinct from OOM), which will be obvious in crash-stats.
        • Will require exposing a fallible malloc somehow
        • May require adding methods or variants to string classes, for example.
    • We must run GC and purge caches before giving up or we will have false positive OOMs when tons of memory is not actually live.
      • Need to monitor OS memory pressure and avoid getting close to these false OOMs.
      • This was part of E10s, is it ready for Firefox 4?