Closed Bug 1471535 Opened 6 years ago Closed 6 years ago

Run all MediaDataDecoder in their own decoder process

Categories

(Core :: Audio/Video: Playback, enhancement, P2)

Unspecified
macOS
enhancement

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: jya, Assigned: mjf)

References

(Depends on 1 open bug, Blocks 6 open bugs)

Details

(Whiteboard: [overhead:>2MB])

Attachments

(12 files, 1 obsolete file)

46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
46 bytes, text/x-phabricator-request
Details | Review
This will allow to apply sandbox the decoding process, increasing security.
Assignee: nobody → mfroman
Priority: -- → P3
Jean-Yves - Do you have a vague ballpark memory number for this?
Flags: needinfo?(jyavenard)
Blocks: 1452688
Rank: 15
Priority: P3 → P2
Blocks: AV1
(In reply to Anthony Jones (:kentuckyfriedtakahe, :k17e) from comment #1) > Jean-Yves - Do you have a vague ballpark memory number for this? In regards to how much memory this could use or how much memory it would save in each content process? Memory use will be dependent on how many decoding tasks are active at any given time and how big the video frames are going to be. I also expect a hit on performance at first as we would need an extra copy that we need know. Currently, the ffmpeg video decoder for example, directly upload the YUV image straight from the ffmpeg decoder into a D3D11 surface. Would need to implement similar tricks with the RDD (RemoteDataDecoder) process.
Flags: needinfo?(jyavenard)
(In reply to Jean-Yves Avenard [:jya] from comment #2) > (In reply to Anthony Jones (:kentuckyfriedtakahe, :k17e) from comment #1) > > Jean-Yves - Do you have a vague ballpark memory number for this? > > In regards to how much memory this could use or how much memory it would > save in each content process? How much it would save in each content process. > Memory use will be dependent on how many decoding tasks are active at any > given time and how big the video frames are going to be. Do you have an estimate for one decoder, or examples of a few? It would help prioritize this from a content memshrink point of view.
Flags: needinfo?(jyavenard)
Whiteboard: [overhead:?]
(In reply to Eric Rahm [:erahm] from comment #3) > > How much it would save in each content process. Each content process create several SharedThreadPool made each of 8 threads with a set stack size of 256kB. This big stack size is needed as we call external framework. We would only need those type of threadpool in the decoding process. > > > Memory use will be dependent on how many decoding tasks are active at any > > given time and how big the video frames are going to be. > > Do you have an estimate for one decoder, or examples of a few? It would help > prioritize this from a content memshrink point of view. It really depends on use, having said that a fair amount of content are using animated videos.... The best answer will be that we can do some measurement once we have the prototype running.
Flags: needinfo?(jyavenard)
Okay, so a low end estimate would be something like 2MB just for the threadpool. This probably won't show up in our baseline tests as I assume the threadpool is lazily instantiated.
Whiteboard: [overhead:?] → [overhead:>2MB]
Blocks: 1452146
Sinewave tables and the ffmpeg library relocations also use memory.
- also makes RemoteMediaDecoder generic so it can work with the remote decoders on the RDD process - changes VideoDecoderChild to subclass IRemoteDecoderChild
Due to changes in where things end up in the unified builds. Depends on D8482
Depends on D8487
Depends on D8489
> void > SandboxBroker::SetSecurityLevelForRDDProcess(int32_t aSandboxLevel) > { > // reuse GPU sandbox code until full sandbox effort. (mjf) > SetSecurityLevelForGPUProcess(aSandboxLevel); > } Hey all, this should emulate GMP settings vs. GPU, with modifications as needed depending on what breaks. GMP hosts drm media plugins and is heavily locked down. We should start with those settings and see how much we can keep. GPU isn't locked down much at all due to various issues with 3rd party 'stuff' that loads there (drivers, vr, fonts, etc.).
Jim - we're opening a follow on bug for all the proper sandboxing. This is here specifically because it matches the GPU process that all of this was based on and without any sandboxing Shmem failed to allocate in our new process. Is this an accepted very short term solution?
Flags: needinfo?(jmathies)
Blocks: 1498624
(In reply to Michael Froman [:mjf] from comment #21) > and without any sandboxing Shmem failed to allocate in our new process. FYI, shared memory allocation in the child process is potentially a problem, at least on Linux: it's implemented by opening files, so the process would need limited filesystem access instead of none. GMP has the plugin process request that the parent do the creation[1][2] in order to deal with this (using sync IPC, which we generally try to avoid if possible, because it was kind of glued in after the fact), and then it has a cache on top of that (which if I recall correctly was also to help with the performance of creating/destroying 3 shms every frame). On Linux we can use the same file brokering we use for content processes if needed, but it increases attack surface; I don't know what if any issues there might be on other platforms if we want at least as much sandboxing as GMP. (To make this more confusing, bug 1440203 will allow sandbox-friendly shared memory allocation on Linux kernels since 3.17, released October 2014… but that's only 85% of our Linux userbase, so we'll still need a fallback for the foreseeable future.) [1] https://searchfox.org/mozilla-central/source/dom/media/gmp/PGMPVideoDecoder.ipdl#46 [2] https://searchfox.org/mozilla-central/source/dom/media/gmp/PGMPVideoEncoder.ipdl#44
(In reply to Michael Froman [:mjf] from comment #21) > Jim - we're opening a follow on bug for all the proper sandboxing. This is > here specifically because it matches the GPU process that all of this was > based on and without any sandboxing Shmem failed to allocate in our new > process. Is this an accepted very short term solution? Well, currently this code runs in content so essentially we're downgrading the security construct this code runs within. Should we try to match content at least? It's pretty easy to flip these switches and push to try to find issues. We know the code works under the content process restrictions which are weaker than the GPU settings.
Flags: needinfo?(jmathies)
(In reply to Jim Mathies [:jimm] from comment #23) > (In reply to Michael Froman [:mjf] from comment #21) > > Jim - we're opening a follow on bug for all the proper sandboxing. This is > > here specifically because it matches the GPU process that all of this was > > based on and without any sandboxing Shmem failed to allocate in our new > > process. Is this an accepted very short term solution? > > Well, currently this code runs in content so essentially we're downgrading > the security construct this code runs within. Should we try to match content > at least? It's pretty easy to flip these switches and push to try to find > issues. We know the code works under the content process restrictions which > are weaker than the GPU settings. s/weaker/stronger
Jim, we're not planning to pref on until the full sandboxing bug (Bug 1498624) has landed. Does that change anything for you?
Flags: needinfo?(jmathies)
Attachment #9016502 - Attachment description: Bug 1471535 - pt5 - Add BuildSurfaceDescriptorBuffer to ImageContainer for remote decoding. r?jya! → Bug 1471535 - pt4 - Add BuildSurfaceDescriptorBuffer to ImageContainer for remote decoding. r?jya!
Attachment #9016504 - Attachment description: Bug 1471535 - pt7 - Add GeckoProcessType_RDD. r?jya! → Bug 1471535 - pt6 - Add GeckoProcessType_RDD. r?jya!
Attachment #9016505 - Attachment description: Bug 1471535 - pt8 - Add remote decoding in dom/media/ipc alongside gpu decoding. r?jya! → Bug 1471535 - pt7 - Add remote decoding in dom/media/ipc alongside gpu decoding. r?jya!
Attachment #9016506 - Attachment description: Bug 1471535 - pt9 - Add RDD process code. r?jya! → Bug 1471535 - pt8 - Add RDD process code. r?jya!
Attachment #9016507 - Attachment description: Bug 1471535 - pt10 - Add Windows sandbox pref and Win sandboxBroker code for RDD process. r?jya! → Bug 1471535 - pt9 - Add Windows sandbox pref and Win sandboxBroker code for RDD process. r?jya!
Attachment #9016508 - Attachment description: Bug 1471535 - pt11 - Handle memory reporting for RDD. r?jya! → Bug 1471535 - pt10 - Handle memory reporting for RDD. r?jya!
Attachment #9016509 - Attachment description: Bug 1471535 - pt12 - Handle crash reporting for RDD. r?jya! → Bug 1471535 - pt11 - Handle crash reporting for RDD. r?jya!
Attachment #9016510 - Attachment description: Bug 1471535 - pt13 - Hook up RDD process and Remote decoding. r?jya! → Bug 1471535 - pt12 - Hook up RDD process and Remote decoding. r?jya!
Attachment #9016501 - Attachment is obsolete: true
Attachment #9016503 - Attachment description: Bug 1471535 - pt6 - Add prefs media.rdd-process.enabled and media.rdd-process.startup_timeout_ms. r?jya! → Bug 1471535 - pt5 - Add prefs media.rdd-process.enabled and media.rdd-process.startup_timeout_ms. r?jya!
(In reply to Michael Froman [:mjf] from comment #25) > Jim, we're not planning to pref on until the full sandboxing bug (Bug > 1498624) has landed. Does that change anything for you? sounds good, thanks.
Flags: needinfo?(jmathies)
Blocks: 1500196
Blocks: 1500197
Blocks: 1500454
Blocks: 1500596
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/94fed1a4a43b pt1 - Split RemoteVideoDecoder into GpuDecoderModule and RemoteMediaDataDecoder preparing for new RDD decoder work. r=jya
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4a1366419883 pt2 - Fix lurking OSX and Win build issues prepping for RDD work. r=jya
Blocks: 1505976
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/27c9f657bf3d pt3 - Breakout MediaDataIPDL and MediaRawDataIPDL structs for reuse in RDD remote decoders. r=jya
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3a8a75389c42 pt4 - Add BuildSurfaceDescriptorBuffer to ImageContainer for remote decoding. r=jya,mattwoodrow https://hg.mozilla.org/integration/autoland/rev/fe9b5cdf78f9 pt5 - Add prefs media.rdd-process.enabled and media.rdd-process.startup_timeout_ms. r=jya https://hg.mozilla.org/integration/autoland/rev/a094c1ac3afe pt6 - Add GeckoProcessType_RDD. r=jya https://hg.mozilla.org/integration/autoland/rev/a32288737e57 pt7 - Add remote decoding in dom/media/ipc alongside gpu decoding. r=jya,mattwoodrow,jld https://hg.mozilla.org/integration/autoland/rev/1a991ac2e1f8 pt8 - Add RDD process code. r=jld https://hg.mozilla.org/integration/autoland/rev/f53e1e7bd538 pt9 - Add Windows sandbox pref and Win sandboxBroker code for RDD process. r=bobowen https://hg.mozilla.org/integration/autoland/rev/8082f226b52d pt10 - Handle memory reporting for RDD. r=jya,erahm https://hg.mozilla.org/integration/autoland/rev/8dc9b4d59f90 pt11 - Handle crash reporting for RDD. r=jya,gsvelto https://hg.mozilla.org/integration/autoland/rev/1342e21cf613 pt12 - Hook up RDD process and Remote decoding. r=jya,spohl
Backout by dluca@mozilla.com: https://hg.mozilla.org/mozilla-central/rev/b9920862e1e4 Backed out 3 changesets for Mochitest failures in build/src/dom/media/ipc/VideoDecoderChild.cpp. a=backout
Backed out 9 changesets (bug 1471535) for Mochitest failures in build/src/dom/media/ipc/VideoDecoderChild.cpp Log: https://treeherder.mozilla.org/logviewer.html#?job_id=210758001&repo=autoland&lineNumber=9157 INFO - TEST-INFO | Main app process: exit 0 08:47:20 INFO - runtests.py | Application ran for: 0:18:12.329000 08:47:20 INFO - zombiecheck | Reading PID log: c:\users\task_1541751533\appdata\local\temp\tmp6rd8mzpidlog 08:47:20 INFO - ==> process 8992 launched child process 3404 ("Z:\task_1541751533\build\application\firefox\firefox.exe" -contentproc --channel="8992.0.1420702395\2036414744" -parentBuildID 20181109065456 -greomni "Z:\task_1541751533\build\application\firefox\omni.ja" -appomni "Z:\task_1541751533\build\application\firefox\browser\omni.ja" -appdir "Z:\task_1541751533\build\application\firefox\browser" - "C:\Users\task_1541751533\AppData\LocalLow\Mozilla\Temp-{59bb3603-22e8-4b04-82b8-176e3b4db083}" 8992 "\\.\pipe\gecko-crash-server-pipe.8992" 1888 gpu) 08:47:20 INFO - ==> process 8992 launched child process 9140 ("Z:\task_1541751533\build\application\firefox\firefox.exe" -contentproc --channel="8992.6.307390379\1401140378" -childID 1 -isForBrowser -prefsHandle 3016 -prefMapHandle 3012 -prefsLen 1 -prefMapSize 188972 -schedulerPrefs 0001,2 -parentBuildID 20181109065456 -greomni "Z:\task_1541751533\build\application\firefox\omni.ja" -appomni "Z:\task_1541751533\build\application\firefox\browser\omni.ja" -appdir "Z:\task_1541751533\build\application\firefox\browser" - 8992 "\\.\pipe\gecko-crash-server-pipe.8992" 3028 tab) 08:47:20 INFO - ==> process 8992 launched child process 7960 ("Z:\task_1541751533\build\application\firefox\firefox.exe" -contentproc --channel="8992.13.1313044423\1730671436" -childID 2 -isForBrowser -prefsHandle 2944 -prefMapHandle 2904 -prefsLen 185 -prefMapSize 188972 -schedulerPrefs 0001,2 -parentBuildID 20181109065456 -greomni "Z:\task_1541751533\build\application\firefox\omni.ja" -appomni "Z:\task_1541751533\build\application\firefox\browser\omni.ja" -appdir "Z:\task_1541751533\build\application\firefox\browser" - 8992 "\\.\pipe\gecko-crash-server-pipe.8992" 2228 tab) 08:47:20 INFO - ==> process 8992 launched child process 7528 ("Z:\task_1541751533\build\application\firefox\firefox.exe" -contentproc --channel="8992.20.1654749709\1085443532" -childID 3 -isForBrowser -prefsHandle 2932 -prefMapHandle 3056 -prefsLen 225 -prefMapSize 188972 -schedulerPrefs 0001,2 -parentBuildID 20181109065456 -greomni "Z:\task_1541751533\build\application\firefox\omni.ja" -appomni "Z:\task_1541751533\build\application\firefox\browser\omni.ja" -appdir "Z:\task_1541751533\build\application\firefox\browser" - 8992 "\\.\pipe\gecko-crash-server-pipe.8992" 3112 tab) 08:47:20 INFO - ==> process 8992 launched child process 9116 ("Z:\task_1541751533\build\application\firefox\firefox.exe" -contentproc --channel="8992.27.148573661\913798537" -childID 4 -isForBrowser -prefsHandle 4992 -prefMapHandle 4180 -prefsLen 10005 -prefMapSize 188972 -schedulerPrefs 0001,2 -parentBuildID 20181109065456 -greomni "Z:\task_1541751533\build\application\firefox\omni.ja" -appomni "Z:\task_1541751533\build\application\firefox\browser\omni.ja" -appdir "Z:\task_1541751533\build\application\firefox\browser" - 8992 "\\.\pipe\gecko-crash-server-pipe.8992" 1452 tab) 08:47:20 INFO - zombiecheck | Checking for orphan process with PID: 7960 08:47:20 INFO - zombiecheck | Checking for orphan process with PID: 9140 08:47:20 INFO - zombiecheck | Checking for orphan process with PID: 9116 08:47:20 INFO - zombiecheck | Checking for orphan process with PID: 3404 08:47:20 INFO - zombiecheck | Checking for orphan process with PID: 7528 08:47:20 INFO - mozcrash Copy/paste: Z:\task_1541751533\build\win32-minidump_stackwalk.exe c:\users\task_1541751533\appdata\local\temp\tmpu3pxk8.mozrunner\minidumps\79fbbe96-c815-49ff-ac37-cbc203d36cc4.dmp Z:\task_1541751533\build\symbols 08:47:28 INFO - mozcrash Saved minidump as Z:\task_1541751533\build\blobber_upload_dir\79fbbe96-c815-49ff-ac37-cbc203d36cc4.dmp 08:47:28 INFO - mozcrash Saved app info as Z:\task_1541751533\build\blobber_upload_dir\79fbbe96-c815-49ff-ac37-cbc203d36cc4.extra 08:47:28 INFO - PROCESS-CRASH | Main app process exited normally | application crashed [@ mozilla::dom::VideoDecoderChild::~VideoDecoderChild()] 08:47:28 INFO - Crash dump filename: c:\users\task_1541751533\appdata\local\temp\tmpu3pxk8.mozrunner\minidumps\79fbbe96-c815-49ff-ac37-cbc203d36cc4.dmp 08:47:28 INFO - Operating system: Windows NT 08:47:28 INFO - 10.0.15063 08:47:28 INFO - CPU: amd64 08:47:28 INFO - family 6 model 62 stepping 4 08:47:28 INFO - 8 CPUs 08:47:28 INFO - 08:47:28 INFO - GPU: UNKNOWN 08:47:28 INFO - 08:47:28 INFO - Crash reason: EXCEPTION_BREAKPOINT 08:47:28 INFO - Crash address: 0x7ffe164efd2d 08:47:28 INFO - Assertion: Unknown assertion type 0x00000000 08:47:28 INFO - Process uptime: 1056 seconds 08:47:28 INFO - 08:47:28 INFO - Thread 43 (crashed) 08:47:28 INFO - 0 xul.dll!mozilla::dom::VideoDecoderChild::~VideoDecoderChild() [VideoDecoderChild.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 55 + 0x59] 08:47:28 INFO - rax = 0x0000000000000000 rdx = 0x00000026a2ebeb48 08:47:28 INFO - rcx = 0x00000000ffffffff rbx = 0x00000026a2ebed08 08:47:28 INFO - rsi = 0x000001ed5aa6db00 rdi = 0x0000000000000001 08:47:28 INFO - rbp = 0x0000000000000003 rsp = 0x00000026a2ebeb30 08:47:28 INFO - r8 = 0x00000026a2ebeb40 r9 = 0x00000026a2ebeb38 08:47:28 INFO - r10 = 0x0000000000000000 r11 = 0x00000026a2eba170 08:47:28 INFO - r12 = 0x000001ed5aa70520 r13 = 0x00007ffe1a0e660a 08:47:28 INFO - r14 = 0x00000026a2ebec20 r15 = 0x00000026a2ebecd0 08:47:28 INFO - rip = 0x00007ffe164efd2d 08:47:28 INFO - Found by: given as instruction pointer in context 08:47:28 INFO - 1 xul.dll![thunk]:mozilla::dom::VideoDecoderChild::`vector deleting destructor'`adjustor{40}' (unsigned int) + 0x17 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebeb80 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe164f1a87 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 2 xul.dll!mozilla::GpuDecoderModule::CreateVideoDecoder(mozilla::CreateDecoderParams const &) [GpuDecoderModule.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 96 + 0xa6] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebebc0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe164e0dd1 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 3 xul.dll!mozilla::MediaChangeMonitor::CreateDecoder(mozilla::DecoderDoctorDiagnostics *) [MediaChangeMonitor.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 456 + 0x16] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebeca0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe1658891f 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 4 xul.dll!mozilla::MediaChangeMonitor::MediaChangeMonitor(mozilla::PlatformDecoderModule *,mozilla::CreateDecoderParams const &) [MediaChangeMonitor.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 230 + 0x18] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebedb0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe16579413 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 5 xul.dll!mozilla::PDMFactory::CreateDecoderWithPDM(mozilla::PlatformDecoderModule *,mozilla::CreateDecoderParams const &) [PDMFactory.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 302 + 0xe] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebee60 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe16578b7e 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 6 xul.dll!mozilla::PDMFactory::CreateDecoder(mozilla::CreateDecoderParams const &) [PDMFactory.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 243 + 0xd] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebef60 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe165787b0 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 7 xul.dll!mozilla::MediaFormatReader::DecoderFactory::DoCreateDecoder(mozilla::MediaFormatReader::DecoderFactory::Data &) [MediaFormatReader.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 607 + 0x5] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebefe0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe1638ff46 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 8 xul.dll!mozilla::MediaFormatReader::DecoderFactory::RunStage(mozilla::MediaFormatReader::DecoderFactory::Data &) [MediaFormatReader.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 539 + 0x14] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf100 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe1638f60a 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 9 xul.dll!void mozilla::MozPromise<RefPtr<mozilla::GlobalAllocPolicy::Token>,bool,1>::ThenValue<`lambda at z:/build/build/src/dom/media/MediaFormatReader.cpp:514:9',`lambda at z:/build/build/src/dom/media/MediaFormatReader.cpp:520:9'>::DoResolveOrRejectInternal(class mozilla::MozPromise<RefPtr<mozilla::GlobalAllocPolicy::Token>,bool,1>::ResolveOrRejectValue & const) [MozPromise.h:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 774 + 0x65] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf1e0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe163d367c 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 10 xul.dll!mozilla::MozPromise<RefPtr<mozilla::GlobalAllocPolicy::Token>,bool,1>::ThenValueBase::ResolveOrRejectRunnable::Run() [MozPromise.h:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 411 + 0x5] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf230 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe163d1fd2 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 11 xul.dll!mozilla::AutoTaskDispatcher::TaskGroupRunnable::Run() [TaskDispatcher.h:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 214 + 0x6] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf270 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe135fb5db 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 12 xul.dll!mozilla::TaskQueue::Runner::Run() [TaskQueue.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 235 + 0x9] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf2b0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe135ffcb8 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 13 xul.dll!nsThreadPool::Run() [nsThreadPool.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 245 + 0x6] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf360 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe136119ca 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 14 xul.dll!nsThread::ProcessNextEvent(bool,bool *) [nsThread.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 1246 + 0x6] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebf4c0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe1360be8b 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 15 xul.dll!NS_ProcessNextEvent(nsIThread *,bool) [nsThreadUtils.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 530 + 0xd] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfa70 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe1360f526 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 16 xul.dll!mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate *) [MessagePump.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 364 + 0xa] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfac0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe13d0f8da 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 17 xul.dll!MessageLoop::RunHandler() [message_loop.cc:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 318 + 0x8] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfb30 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe13cc66e2 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 18 xul.dll!MessageLoop::Run() [message_loop.cc:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 298 + 0x5] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfb80 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe13cc65d1 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 19 xul.dll!nsThread::ThreadFunc(void *) [nsThread.cpp:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 505 + 0x8] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfbd0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe13608ac3 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 20 nss3.dll!PR_NativeRunThread [pruthr.c:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 397 + 0x7] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfc40 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe31472056 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 21 nss3.dll!static unsigned int pr_root(void *) [w95thred.c:7283b13fd2d209e706e47b053278b43b0ea2fa84 : 137 + 0x6] 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfcc0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe3145fc9a 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 22 ucrtbase.dll!RtlGetFullPathName_Ustr + 0x959 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfcf0 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe47cc0369 08:47:28 INFO - Found by: call frame info 08:47:28 INFO - 23 KERNELBASE.dll!RtlAddAtomToAtomTableEx + 0x68 08:47:28 INFO - rbx = 0x00000026a2ebed08 rbp = 0x0000000000000003 08:47:28 INFO - rsp = 0x00000026a2ebfe00 r12 = 0x000001ed5aa70520 08:47:28 INFO - r13 = 0x00007ffe1a0e660a r14 = 0x00000026a2ebec20 08:47:28 INFO - r15 = 0x00000026a2ebecd0 rip = 0x00007ffe47a567c0 08:47:28 INFO - Found by: call frame info Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=1342e21cf613ff4a7146d04dd926ce4b07f6ead6 Backout: https://hg.mozilla.org/integration/autoland/rev/f6d29b57e6ba9d75d535c510d199df9b918e0c7b Backedout from central the 3 changes sets in the comment above.
Status: RESOLVED → REOPENED
Flags: needinfo?(mfroman)
Resolution: FIXED → ---
Target Milestone: mozilla65 → ---
Thanks, dluca! I finally tracked down the last night.
Flags: needinfo?(mfroman)
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f3f6abc052f0 pt1 - Split RemoteVideoDecoder into GpuDecoderModule and RemoteMediaDataDecoder preparing for new RDD decoder work. r=jya https://hg.mozilla.org/integration/autoland/rev/53aff7e699b4 pt2 - Fix lurking OSX and Win build issues prepping for RDD work. r=jya https://hg.mozilla.org/integration/autoland/rev/5dcc74a938c6 pt3 - Breakout MediaDataIPDL and MediaRawDataIPDL structs for reuse in RDD remote decoders. r=jya https://hg.mozilla.org/integration/autoland/rev/a038821cd8ae pt4 - Add BuildSurfaceDescriptorBuffer to ImageContainer for remote decoding. r=jya,mattwoodrow https://hg.mozilla.org/integration/autoland/rev/d39fef4334b3 pt5 - Add prefs media.rdd-process.enabled and media.rdd-process.startup_timeout_ms. r=jya https://hg.mozilla.org/integration/autoland/rev/af91e1f04c2d pt6 - Add GeckoProcessType_RDD. r=jya https://hg.mozilla.org/integration/autoland/rev/28ae4b6fab68 pt7 - Add remote decoding in dom/media/ipc alongside gpu decoding. r=jya,mattwoodrow,jld https://hg.mozilla.org/integration/autoland/rev/404d760a9e82 pt8 - Add RDD process code. r=jld https://hg.mozilla.org/integration/autoland/rev/ea6b73ded74d pt9 - Add Windows sandbox pref and Win sandboxBroker code for RDD process. r=bobowen https://hg.mozilla.org/integration/autoland/rev/dfb4d3462b22 pt10 - Handle memory reporting for RDD. r=jya,erahm https://hg.mozilla.org/integration/autoland/rev/2176010bc1fe pt11 - Handle crash reporting for RDD. r=jya,gsvelto https://hg.mozilla.org/integration/autoland/rev/3d8a11458d79 pt12 - Hook up RDD process and Remote decoding. r=jya,spohl
Backed out 12 changesets (Bug 1471535) for VideoDecoderChild failures. Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=3d8a11458d79b14ed5c76b1676399859f7c727a6&selectedJob=211530505 Backout link: https://hg.mozilla.org/integration/autoland/rev/679069f59585bb55531989cea63c0d9551b30c3d Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=211530505&repo=autoland&lineNumber=10830 20:30:57 INFO - GECKO(6292) | #12: PR_NativeRunThread [nsprpub/pr/src/threads/combined/pruthr.c:406] 20:30:57 INFO - 20:30:57 INFO - GECKO(6292) | #13: static unsigned int pr_root(void *) [nsprpub/pr/src/md/windows/w95thred.c:138] 20:30:57 INFO - 20:30:57 INFO - GECKO(6292) | #14: ucrtbase.dll + 0x20369 20:30:57 INFO - 20:30:57 INFO - GECKO(6292) | #15: KERNEL32.DLL + 0x12774 20:30:57 INFO - 20:30:57 INFO - GECKO(6292) | #16: static void patched_BaseThreadInitThunk(int, void *, void *) [mozglue/build/WindowsDllBlocklist.cpp:754] 20:30:57 INFO - 20:30:57 INFO - GECKO(6292) | #17: ntdll.dll + 0x70d51 20:30:57 INFO - 20:30:58 INFO - GECKO(6292) | [GPU 9740, VideoParent] WARNING: NS_ENSURE_TRUE(SUCCEEDED(hr)) failed: file z:/build/build/src/dom/media/platforms/wmf/MFTDecoder.cpp, line 195 20:30:58 INFO - GECKO(6292) | Assertion failure: NS_GetCurrentThread() == mThread, at z:/build/build/src/dom/media/ipc/VideoDecoderChild.cpp:372 20:30:58 INFO - GECKO(6292) | #01: mozilla::GpuDecoderModule::CreateVideoDecoder(mozilla::CreateDecoderParams const &) [dom/media/ipc/GpuDecoderModule.cpp:96] 20:30:58 INFO - 20:30:58 INFO - GECKO(6292) | #02: mozilla::MediaChangeMonitor::CreateDecoder(mozilla::DecoderDoctorDiagnostics *) [dom/media/platforms/wrappers/MediaChangeMonitor.cpp:454] 20:30:58 INFO - 20:30:58 INFO - GECKO(6292) | #03: mozilla::MediaChangeMonitor::MediaChangeMonitor(mozilla::PlatformDecoderModule *,mozilla::CreateDecoderParams const &) [dom/media/platforms/wrappers/MediaChangeMonitor.cpp:227] ..... 20:31:02 INFO - mozcrash Copy/paste: Z:\task_1542140454\build\win32-minidump_stackwalk.exe c:\users\task_1542140454\appdata\local\temp\tmpry62wy.mozrunner\minidumps\2b24b3a3-742a-4e2c-bd4b-081bbadac437.dmp Z:\task_1542140454\build\symbols 20:31:11 INFO - mozcrash Saved minidump as Z:\task_1542140454\build\blobber_upload_dir\2b24b3a3-742a-4e2c-bd4b-081bbadac437.dmp 20:31:11 INFO - mozcrash Saved app info as Z:\task_1542140454\build\blobber_upload_dir\2b24b3a3-742a-4e2c-bd4b-081bbadac437.extra 20:31:11 INFO - PROCESS-CRASH | Main app process exited normally | application crashed [@ mozilla::dom::VideoDecoderChild::~VideoDecoderChild()] 20:31:11 INFO - Crash dump filename: c:\users\task_1542140454\appdata\local\temp\tmpry62wy.mozrunner\minidumps\2b24b3a3-742a-4e2c-bd4b-081bbadac437.dmp 20:31:11 INFO - Operating system: Windows NT 20:31:11 INFO - 10.0.15063 20:31:11 INFO - CPU: amd64 20:31:11 INFO - family 6 model 45 stepping 7 20:31:11 INFO - 8 CPUs 20:31:11 INFO - 20:31:11 INFO - GPU: UNKNOWN 20:31:11 INFO - 20:31:11 INFO - Crash reason: EXCEPTION_BREAKPOINT 20:31:11 INFO - Crash address: 0x7ffc1f39a7ed 20:31:11 INFO - Assertion: Unknown assertion type 0x00000000 20:31:11 INFO - Process uptime: 129 seconds 20:31:11 INFO - 20:31:11 INFO - Thread 50 (crashed) 20:31:11 INFO - 0 xul.dll!mozilla::dom::VideoDecoderChild::~VideoDecoderChild() [VideoDecoderChild.cpp:3d8a11458d79b14ed5c76b1676399859f7c727a6 : 55 + 0x59] 20:31:11 INFO - rax = 0x0000000000000000 rdx = 0x000000049c2aecf8 20:31:11 INFO - rcx = 0x00000000ffffffff rbx = 0x00000159d5823a00 20:31:11 INFO - rsi = 0x00000159d5823a00 rdi = 0x0000000000000001 20:31:11 INFO - rbp = 0x000000049c2aedc0 rsp = 0x000000049c2aece0 20:31:11 INFO - r8 = 0x000000049c2aecf0 r9 = 0x000000049c2aece8 20:31:11 INFO - r10 = 0x0000000000000000 r11 = 0x000000049c2aa320 20:31:11 INFO - r12 = 0x000000049c2aedd8 r13 = 0x00000159c1e89a00 20:31:11 INFO - r14 = 0x00000159d5823a28 r15 = 0x00000159d57480a0 20:31:11 INFO - rip = 0x00007ffc1f39a7ed 20:31:11 INFO - Found by: given as instruction pointer in context 20:31:11 INFO - 1 xul.dll![thunk]:mozilla::dom::VideoDecoderChild::`vector deleting destructor'`adjustor{40}' (unsigned int) + 0x17 20:31:11 INFO - rbx = 0x00000159d5823a00 rbp = 0x000000049c2aedc0 20:31:11 INFO - rsp = 0x000000049c2aed30 r12 = 0x000000049c2aedd8 20:31:11 INFO - r13 = 0x00000159c1e89a00 r14 = 0x00000159d5823a28 20:31:11 INFO - r15 = 0x00000159d57480a0 rip = 0x00007ffc1f39c737 20:31:11 INFO - Found by: call frame info 20:31:11 INFO - 2 xul.dll!mozilla::GpuDecoderModule::CreateVideoDecoder(mozilla::CreateDecoderParams const &) [GpuDecoderModule.cpp:3d8a11458d79b14ed5c76b1676399859f7c727a6 : 96 + 0x1f] 20:31:11 INFO - rbx = 0x00000159d5823a00 rbp = 0x000000049c2aedc0 20:31:11 INFO - rsp = 0x000000049c2aed70 r12 = 0x000000049c2aedd8 20:31:11 INFO - r13 = 0x00000159c1e89a00 r14 = 0x00000159d5823a28 20:31:11 INFO - r15 = 0x00000159d57480a0 rip = 0x00007ffc1f38b7d6 20:31:11 INFO - Found by: call frame info 20:31:11 INFO - 3 xul.dll!mozilla::MediaChangeMonitor::CreateDecoder(mozilla::DecoderDoctorDiagnostics *) [MediaChangeMonitor.cpp:3d8a11458d79b14ed5c76b1676399859f7c727a6 : 454 + 0x16] 20:31:11 INFO - rbx = 0x00000159d5823a00 rbp = 0x000000049c2aedc0 20:31:11 INFO - rsp = 0x000000049c2aee60 r12 = 0x000000049c2aedd8 20:31:11 INFO - r13 = 0x00000159c1e89a00 r14 = 0x00000159d5823a28 20:31:11 INFO - r15 = 0x00000159d57480a0 rip = 0x00007ffc1f43343f 20:31:11 INFO - Found by: call frame info 20:31:11 INFO - 4 xul.dll!mozilla::MediaChangeMonitor::MediaChangeMonitor(mozilla::PlatformDecoderModule *,mozilla::CreateDecoderParams const &) [MediaChangeMonitor.cpp:3d8a11458d79b14ed5c76b1676399859f7c727a6 : 227 + 0x18] 20:31:11 INFO - rbx = 0x00000159d5823a00 rbp = 0x000000049c2aedc0 20:31:11 INFO - rsp = 0x000000049c2aef70 r12 = 0x000000049c2aedd8 20:31:11 INFO - r13 = 0x00000159c1e89a00 r14 = 0x00000159d5823a28 20:31:11 INFO - r15 = 0x00000159d57480a0 rip = 0x00007ffc1f423ef3 20:31:11 INFO - Found by: call frame info 20:31:11 INFO - 5 xul.dll!mozilla::PDMFactory::CreateDecoderWithPDM(mozilla::PlatformDecoderModule *,mozilla::CreateDecoderParams const &) [PDMFactory.cpp:3d8a11458d79b14ed5c76b1676399859f7c727a6 : 302 + 0xe] 20:31:11 INFO - rbx = 0x00000159d5823a00 rbp = 0x000000049c2aedc0 20:31:11 INFO - rsp = 0x000000049c2af020 r12 = 0x000000049c2aedd8 20:31:11 INFO - r13 = 0x00000159c1e89a00 r14 = 0x00000159d5823a28 20:31:11 INFO - r15 = 0x00000159d57480a0 rip = 0x00007ffc1f42365e
Flags: needinfo?(mfroman)
(In reply to Bogdan Tara[:bogdan_tara] from comment #36) > Backed out 12 changesets (Bug 1471535) for VideoDecoderChild failures. Thank you. Working on another fix.
Flags: needinfo?(mfroman)
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4035e666b938 pt1 - Split RemoteVideoDecoder into GpuDecoderModule and RemoteMediaDataDecoder preparing for new RDD decoder work. r=jya
Status: REOPENED → RESOLVED
Closed: 6 years ago6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
Was it intentional to land only part 1?
Flags: needinfo?(mfroman)
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(In reply to David Major [:dmajor] from comment #40) > Was it intentional to land only part 1? It was my intention because part 1 had been the cause of prior backouts and I wanted to see if I'd resolved the issue before landing the remaining parts (in case yet another backout was necessary).
Flags: needinfo?(mfroman)
Pushed by mfroman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b63faca5b139 pt2 - Fix lurking OSX and Win build issues prepping for RDD work. r=jya https://hg.mozilla.org/integration/autoland/rev/06d98fa59080 pt3 - Breakout MediaDataIPDL and MediaRawDataIPDL structs for reuse in RDD remote decoders. r=jya https://hg.mozilla.org/integration/autoland/rev/7373ce52f7b8 pt4 - Add BuildSurfaceDescriptorBuffer to ImageContainer for remote decoding. r=jya,mattwoodrow https://hg.mozilla.org/integration/autoland/rev/931604fb5982 pt5 - Add prefs media.rdd-process.enabled and media.rdd-process.startup_timeout_ms. r=jya https://hg.mozilla.org/integration/autoland/rev/ee036f60d205 pt6 - Add GeckoProcessType_RDD. r=jya https://hg.mozilla.org/integration/autoland/rev/52bfaa088f57 pt7 - Add remote decoding in dom/media/ipc alongside gpu decoding. r=jya,mattwoodrow,jld https://hg.mozilla.org/integration/autoland/rev/82b7ea01b869 pt8 - Add RDD process code. r=jld https://hg.mozilla.org/integration/autoland/rev/c1facc484b6c pt9 - Add Windows sandbox pref and Win sandboxBroker code for RDD process. r=bobowen https://hg.mozilla.org/integration/autoland/rev/0a8506f44924 pt10 - Handle memory reporting for RDD. r=jya,erahm https://hg.mozilla.org/integration/autoland/rev/9dee3db0aeef pt11 - Handle crash reporting for RDD. r=jya,gsvelto https://hg.mozilla.org/integration/autoland/rev/5373369eb3a6 pt12 - Hook up RDD process and Remote decoding. r=jya,spohl
Depends on: 1515497
See Also: → 1529020
Blocks: 1531092
No longer depends on: 1515497
Regressions: 1515497
OS: Unspecified → macOS
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: