Bug 40907: Backport the fix to LLVM #62546
Merge Info
Related Issues
Backporting
Timeline
-
Immediate: patchset needed as soon as possible -
Next Minor Stable Release: patchset that needs to be verified in nightly before backport -
Eventually: patchset that needs to be verified in alpha before backport -
No Backport (preferred): patchset for the next major stable
(Optional) Justification
-
Emergency security update: patchset fixes CVEs, 0-days, etc -
Censorship event: patchset enables censorship circumvention -
Critical bug-fix: patchset fixes a bug in core-functionality -
Consistency: patchset which would make development easier if it were in both the alpha and release branches; developer tools, build system changes, etc -
Sponsor required: patchset required for sponsor -
Other: please explain
Issue Tracking
-
Link resolved issues with appropriate Release Prep issue for changelog generation
Review
Request Reviewer
-
Request review from an applications developer depending on modified system: -
NOTE: if the MR modifies multiple areas, please
/cc
all the relevant reviewers (since gitlab only allows 1 reviewer) - accessibility : henry
- android : dan
- build system : boklm
- extensions : ma1
- firefox internals (XUL/JS/XPCOM) : ma1
- fonts : pierov
- frontend (implementation) : henry
- frontend (review) : donuts, richard
- localization : henry, pierov
- nightly builds : boklm
- rebases/release-prep : dan_b, ma1, pierov, richard
- security : ma1
- signing : boklm, richard
- updater : pierov
- misc/other : pierov, richard
-
NOTE: if the MR modifies multiple areas, please
Change Description
The debug symbols in Linux mar-tools of Mullvad Browser weren't always reproducible: in some cases one of the NSS modules could change hashes (there were two variants).
The problem is already fixed in newer version of LLVM (from the 17 branch) but they haven't been backported.
However, the patch applies cleanly, so we can apply it ourselves.
After talking with richard, we decided to patch llvm-project
rather than clang
, to be sure it was applied everywhere (even though it should be needed only by clang, and maybe only by Linux).
So, for consistency, we decided to also move the macOS patch I applied last week there.
I've tried only a Linux build, which succeeded, but I didn't try to reproduce a whole build (I've tried the compiler with the reduced case known to fail before, and this patch fixes it).