Closed Bug 1814910 Opened 2 years ago Closed 2 years ago

GMP plugin update mechanism should replace x86 plugin with ARM plugin if channel is updated without version bump

Categories

(Core :: Audio/Video: GMP, task, P3)

task

Tracking

()

VERIFIED FIXED
112 Branch
Tracking Status
firefox-esr102 112+ verified
firefox111 --- verified
firefox112 --- verified

People

(Reporter: aosmond, Assigned: aosmond)

References

Details

Attachments

(2 files)

We should check the hash value here to ensure they match, otherwise we should redownload the binary:
https://searchfox.org/mozilla-central/rev/2d820afafbe62b0148e2766a4d371556edefe36f/toolkit/modules/GMPInstallManager.sys.mjs#623

That is a useful mechanism to allow us to gracefully switch between x86 and ARM widevine plugins without bumping the version number.

We also need to ensure we can allow either ABI for Windows ARM, not just x86:
https://searchfox.org/mozilla-central/rev/2d820afafbe62b0148e2766a4d371556edefe36f/toolkit/modules/GMPUtils.sys.mjs#97

We need to ensure the hash value is the same and remove the old binaries
if not because if we switch architectures without a version bump, we
will continue to use the old binary. Additionally we should also store
both ABI preferences for Windows ARM (x86 and aarch64) to ensure that if
we profile migrate, or update to a new version, we flush the plugins.

Pushed by aosmond@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1cedaeaaebd3 Ensure we allow users to switch between ARM and x86 GMP plugins via balrog. r=azebrowski
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 112 Branch

Minor rebase to allow uplift to release and esr102.

Comment on attachment 9323335 [details]
Rebased for mozilla-release/mozilla-esr102, v1

Beta/Release Uplift Approval Request

  • User impact if declined: Any streaming site depending on Widevine and Clearkey plugins are broken with the x86 plugins on Windows ARM. Uplifting the requested set will allow us to roll out a switch to the ARM plugins instead.

Visiting any DRM protected streaming site will crash the plugin process, and the user will be unable to play content.

  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce:
  • List of other uplifts needed: Bug 1814703, Bug 1819661, Bug 1814703, Bug 1819661, Bug 1820669, Bug 1819410
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Low risk because we have verified this in 112 in both nightly and beta with no issues reported by QA. GMP plugins are already completely broken for Windows ARM users.
  • String changes made/needed:
  • Is Android affected?: No

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: Any streaming site depending on Widevine and Clearkey plugins are broken with the x86 plugins on Windows ARM. Uplifting the requested set will allow us to roll out a switch to the ARM plugins instead.
  • User impact if declined: Visiting any DRM protected streaming site will crash the plugin process, and the user will be unable to play content.
  • Fix Landed on Version: 112
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Low risk because we have verified this in 112 in both nightly and beta with no issues reported by QA. GMP plugins are already completely broken for Windows ARM users.

Depends on:
Bug 1814703, Bug 1819661, Bug 1814703, Bug 1819661, Bug 1820669, Bug 1819410, Bug 1811981

Attachment #9323335 - Flags: approval-mozilla-release?
Attachment #9323335 - Flags: approval-mozilla-esr102?
Flags: qe-verify+
QA Whiteboard: [qa-triaged]

Comment on attachment 9323335 [details]
Rebased for mozilla-release/mozilla-esr102, v1

Approved for 102.10esr

Attachment #9323335 - Flags: approval-mozilla-esr102? → approval-mozilla-esr102+

Tested this issue on Windows 10 and Windows 11 ARM devices, on Firefox Beta 112 and on Firefox ESR 102.10.0 try build from treeherder, using DRM protected streaming sites and we were able to play every video (Netflix, Prime Video, HBO Max, Hulu and Shaka).

Status: RESOLVED → VERIFIED

Comment on attachment 9323335 [details]
Rebased for mozilla-release/mozilla-esr102, v1

Approved for 111.0.1

Attachment #9323335 - Flags: approval-mozilla-release? → approval-mozilla-release+

Tested this issue on Windows 10 and Windows 11 ARM devices, on Firefox 111.0.1, using DRM protected streaming sites (Netflix, Prime Video, HBO Max, Hulu, Spotify and Shaka), we were able to play every video.

Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: