TPEGFX/2017-Q2

< TPEGFX
Revision as of 08:53, 23 June 2017 by Bruce Sun (talk | contribs) (→‎Bruce Sun: Reflect the progress of tasks within Q2)

GFX Topics(from high to low priority)

  • gfx Stability
  • Quantum Rendering(FF57 Aurora on 8/7)
  • Canvas 2D perf(google sheet/streaming)
  • DisplayList(layout related work)
  • Paint correctness(buglist)
  • Any layout works, ex: perf/CSS properties

Goal

Bruce Sun

  • [PENDING] bug 1345330 - Integrate PDFium and its Pepper layer into m-c
    • [DONE] bug 1358023 - Replace build systems of freetype2 library with mozilla ones
    • [DONE] Add corresponding licenses and follow up license review
    • [PENDING] Double check we are using correct symbols of libjpeg, libpng, zlib (i.e. MOZ_Z_* prefixed ones) ~
    • [PENDING] Pack additional binaries (i.e. librpc.so and libpepperpdfium.so) into installation packages ~one week wip
  • [PENDING] bug 1306576 - Fix memory allocation and deallocation mismatch
  • [PENDING] bug 1288298 - Fix Unicode encoding mismatch between JS-Plugins and PPAPI Plug-in
  • [WONTFIX] [TBD] cherry-pick unorder map from chromium bug 1350262
  • [REVIEWING] bug 1368948 - Integrate PDFium for converting EMF on Windows
    • [DONE] Write a script to automatically update local files with upstream PDFium
    • [DONE] Write a moz.build to successfully build PDFium into libxul.dll on Windows
    • [DONE] Update license.html to include corresponding license notices of PDFium (i.e. agg, base, bigint, lcms, pdfium)
    • [DONE] Replace third-party libraries of PDFium with existing ones in Gecko (i.e. freetype, libjpeg, zlib)
    • [DONE] Remove unused libraries (i.e. libpng, libtiff)
    • [DONE] Hack PDfium to further decouple unused libraries (i.e. OpenJPEG)
    • [DISCUSSING] Find a proper location to place PDfium (i.e. /modules)
    • [WAITING] Build errors caused by MSVC STL headers would be solved by bug 1349064
  • [DONE] Upgrade flow/process plan
    • [WONTFIX] library testing
  • [DOING] study gfx

[TBD]

  • [PENDING] Reduce duplications (i.e. libjpeg.a, libpng.a, zlib.a) within two binaries (i.e. libxul.so and libpepperpdfium.so)
  • [PENDING] Avoid building mortar on non-desktop platforms ~ one week wip
  • [PENDING] how to make build default on
  • [PENDING] [Follow up] the statuses of bug 1350261 and bug 1350262

ChihYi Leu

  • (done) bug 1347866 - Update ANGLE to 2950
    • land
  • WebGL Stability
  • WebGL perf
  • WebVR testing (Blocked by WebVR development)
    • bug 1229479 - [webvr] Implement Mochitests for WebVR
      • bug 1306505 - [webvr] Implement mochitest: VRDisplay.exitPresent must only be allowed by content that started VR Presentation
        • land
      • bug 1311802 - [webvr] Implement Mochitest: onvrdisplaydeactivate should only trigger for content that is presenting
        • land
      • bug 1311797 - [webvr] Implement Mochitest: `vrdisplayactivate` event should trigger only when no content is presenting
        • wip
  • TODO
    • (done) update bugzilla more frequently
    • gfx triage for WebGL(stability or regression)

Daosheng Mu

  • WebVR
    • VR controller
      • bug 1349895 - Support HTC Vive trackers (done)
      • bug 1336002 - [webvr] Support HTC Vive button touched in the Gamepad API (done)
      • bug 1336003 - [webvr] Support Oculus Touch button touched in the Gamepad API (done)
      • bug 1356452 - For Vive controllers the hand attribute is not always available (done)
      • bug 1353523 - Adjust threshold for Gamepad button `pressed` state and introduce pref to handle slightly sticky controller buttons (done)
      • bug 1355648 - Add hasOrientation, hasPosition to the Gamepad extension for tracked controllers (done)
    • Stability
      • bug 1306493 - [webvr] Implement Mochitest: Multiple calls to VRDisplay.GetFrameData must return the same values within a frame (done)
      • bug 1351547 - WebVR: crash [@mozilla::WebGLContext::StartVRPresentation()] (done)
      • bug 1358885 - Crash in mozilla::gfx::PVRManager::Transition (done)
      • bug 1321275 - [webvr] Crash in mozalloc_abort | NS_DebugBreak | mozilla::ipc::LogicError | mozilla::gfx::PVRLayer::Transition (done)
    • Reftest
      • bug 1343730 - [webvr] VRDisplayPuppet submitFrame support
      • bug 1229478 - [webvr] Implement Reftests for WebVR
      • bug 1229481 - [webvr] Implement Reftest support for WebVR functionality
  • WebGL perf
    • https://public.etherpad-mozilla.org/p/webgl-perf (2)
    • Profiling
    • Stability
      • bug 1349102 - WebGL crash: [@mozilla::gl::GLContext::AfterGLCall] (done)
      • bug 1355726 - Talos test for WebGL video texture upload (done)
      • bug 1349055 - WebGL: crash [@mozilla::WebGLContext::AssertCachedGlobalState] (done)
      • bug 1358053 - Assertion failure: surface->IsDataSourceSurface() (The snapshot SourceSurface from WebGL rendering contest is not DataSourceSurface.), at ImageBitmap.cpp:885 (done)
      • bug 1349067 - WebGL crash: [mozilla::gl::GLScreenBuffer::GetReadFB] (done)
    • Works for SF all hands
  • TODO
    • Investigate bug 1207170 - webgl perf
    • Taipei developer conference - WebVR
    • Mentor support

Ethan Lin

  • DisplayItem correctness
    • Turn on background color layer by default (bug 1358055)
    • Turn on button background image layer by default
    • Turn on canvas background color layer by default
    • (Done) Turn on button foreground layer by default (bug 1355417)
    • pref profiling for SF all hands
      • profile loading time for wiki page
      • profile scrolling performance on wiki page
  • TODO (senior engs)
    • mentor topics(optional)
    • Team influence
    • status update

Jerry Shih

  • Quantum dom labeling
    • Manage the dom labeling working status with Kevin and Vincent.
  • Quantum flow related bug
    • Check the device reset checking status on content
    • Check the device reset checking status on compositor side.
    • Catch up the problem of PCompositorBridge::Msg_WillClose(bug 1334655) and cooperate with David.
  • Webrender Stability
    • Check for the various format and streaming video with WR.
  • Check the performance of WR image passing.
    • Profile the flow for video playback with WR.
    • Use WR YCbCr image function in gecko. Currently, gecko use libyuv to convert the YCbCr data to RGB DataSoruceSourface. We could just use shader to do to color conversion.
  • TODO (mid of Jan review first two itmes)
    • breackdown every item into one small bug(less than one month)
    • mentor topics
    • Team influence

Kevin Chen

  • gfx Stability
    • Monitor bugs
    • Windows API study
  • DOM-Labeling
  • gfx triage practice
  • Houdini Painting API
  • Campus presentation
    • 2/22 @ TsingHua University.
  • TODO
    • breackdown every item into one small bug(between two week or less than one month)
    • frequently bugzilla updates

Morris Tseng

  • Display item conversion
    • Table conversion
      • bug 929484 - Make HTML table frames (including row/cell/etc. frames) create their own display list items
        • Fix display item collision problem.
        • Add some test works.
      • bug 1344082 - Add webrender support for TableBCBorder
    • Turn on background color by default
      • bug 1358055 - Enable 'layers.advanced.background-color' by default
      • Add fuzzy-if (should be done by Ethan)
      • Some pixel snapping issues.
      • Some problem with scrolling.
    • Turn on bullet by default
      • Add some fuzzy-if for sub-pixel text.
      • Use blob image for path type.
    • Turn on canvas background color by default
      • Most problem would be same as background color.
    • Turn on basic border by default.
      • Not very clear now. But we'll turn on basic border first.
  • QR performance profiling
    • Profile wiki page

Peter Chang

  • OMTA
    • Works in compositor side
      • [Done]Add sampleanimation(bug 1345017) ~ two weeks
      • [Done]enable WebRender OMTA by default(bug 1358437)
    • Support OMTA testing flow
      • move OMTA testing methods into share sub-protocol(bug 1316906)

Vincent Liu

  • gfx Stability
    • bug 1350330 - [Done]Crash in mozalloc_abort | NS_DebugBreak | mozilla::ipc::LogicError | mozilla::layers::PLayerTransactionChild::SendReleaseCompositable
    • bug 1357307 - [Working]startup crash in gfxPrefs::CMSMode() with session manager installed
    • Many bugs triage.
  • GetDeviceRemoved study
  • gfx labeling
    • bug 1333962 - [Triage]Label the vsync runnable
    • bug 1343475 - [Done]Label runnables for platform-independent widget
    • bug 1350677 - [Done]Label nsExiprationTracker subclass gfxFontCache
  • TODO (senior engs)
    • breakdown every item into one small bug(less than one month)
    • mentor topics
    • Team influence
    • Solid gfx triage/crash improvement plan
      • Triage flow
      • Hold a triage meeting to go through triage.(Optional)

open qusetion

  • TODO (senior engs)
    • breackdown every item into one small bug(less than one month)
    • mentor topics
    • Team influence