Summary: | [WinCairo][MediaFoundation] Stop using soft linking for Media Foundation | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Fujii Hironori <Hironori.Fujii> | ||||||||
Component: | Platform | Assignee: | Fujii Hironori <Hironori.Fujii> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | CC: | achristensen, annulen, don.olmstead, ews-watchlist, pvollan, ross.kirsling, webkit-bug-importer | ||||||||
Priority: | P2 | Keywords: | InRadar | ||||||||
Version: | WebKit Nightly Build | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Attachments: |
|
Description
Fujii Hironori
2019-06-11 22:20:04 PDT
Isn't soft linking also a performance improvement, since you only load the dll's when you need to? I checked Firefox and Chrome by using listdlls. It seems that firefox.exe and chrome.exe loaded Direct3D, dxva2.dll, mf.dll and mfplat.dll just by start up the browsers. I'd like to change the call site of MFStartup and MFShutdown to fix Bug 198281. Then, mfplat.dll will be loaded always. Firefox is using soft linking. https://dxr.mozilla.org/mozilla-central/source/dom/media/platforms/wmf/WMFUtils.cpp Chromium is calling API directly, for example MFStartup and MFCreateMediaType. You can search them by https://cs.chromium.org/ Chromium is using /DELAYLOAD. > ldflags += [ > "/DELAYLOAD:d3d9.dll", > "/DELAYLOAD:d3d11.dll", > "/DELAYLOAD:dxva2.dll", > "/DELAYLOAD:mf.dll", > "/DELAYLOAD:mfplat.dll", > ] https://chromium.googlesource.com/chromium/src/+/HEAD/media/gpu/BUILD.gn#213 Created attachment 372096 [details]
WinCairo WK1 MiniBrowser start up log
WinCairo MiniBrowser.exe also loads mf.dll just by stating up.
Created attachment 372906 [details]
Patch
Comment on attachment 372906 [details] Patch Attachment 372906 [details] did not pass win-ews (win): Output: https://webkit-queues.webkit.org/results/12579200 New failing tests: storage/indexeddb/index-cursor.html Created attachment 372917 [details]
Archive of layout-test-results from ews211 for win-future
The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews211 Port: win-future Platform: CYGWIN_NT-10.0-17763-3.0.5-338.x86_64-x86_64-64bit
Comment on attachment 372906 [details] Patch Clearing flags on attachment: 372906 Committed r246918: <https://trac.webkit.org/changeset/246918> All reviewed patches have been landed. Closing bug. Committed r246919: <https://trac.webkit.org/changeset/246919> (In reply to Fujii Hironori from comment #4) > Chromium is using /DELAYLOAD. Filed: Bug 213330 – [WinCairo][MediaFoundation] Use /DELAYLOAD for mf.dll |