Closed Bug 1464537 Opened 6 years ago Closed 6 years ago

20k symbols are "<name omitted>" in XUL.sym for macOS and android builds

Categories

(Socorro :: General, task)

task
Not set
normal

Tracking

(firefox62 fixed)

RESOLVED FIXED
Tracking Status
firefox62 --- fixed

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(2 files)

The reason for the "<name omitted>"s is that those symbols have an undemanglable DW_AT_MIPS_linkage_name, and no DW_AT_name. That's not a problem on Linux/GCC where the symbols have a DW_AT_name. This is apparently a "feature" of clang when targetting osx (it doesn't happen when clang is targetting Linux).
Blocks: 1464522
Actually, that's the explanation for static initializers, but it's not for the others.
The others are due to "errors" like:
  the DIE at offset 0x5606 has a DW_AT_abstract_origin attribute referring to the die at offset 0x57b9, which either was not marked as an inline, or comes later in the file

That is, the breakpad processor doesn't know how to handle abstract origins that occur later in the dwarf data, and many symbols have no name but an abstract origin that occur later in the dwarf data.
Summary: 20k symbols are "<name omitted>" in XUL.sym for macOS builds → 20k symbols are "<name omitted>" in XUL.sym for macOS and android builds
On Android, another reason is that the dwarf info uses DWARF 4 DW_AT_linkage_name instead of the (old) extension DW_AT_MIPS_linkage_name. They have the same meaning (the former is essentially the standardized version of the latter), but the former is not supported by breakpad.
Note that the attached patches don't address comment 2, because that's much more work than I'm ready to put in. That's still a problem we should probably address somehow, though.
Comment on attachment 8981279 [details]
Bug 1464537 - Fall back to the raw symbol name from DW_AT_MIPS_linkage_name when there is nothing else.

https://reviewboard.mozilla.org/r/247380/#review254040

You should submit this upstream as well.
Attachment #8981279 - Flags: review?(ted) → review+
Comment on attachment 8981278 [details]
Bug 1464537 - Add support for DWARF 4 DW_AT_linkage_name.

https://reviewboard.mozilla.org/r/247378/#review254038

This should go upstream as well. If you submit it for upstream review I can land it there.
Attachment #8981278 - Flags: review?(ted) → review+
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/fbb3d4a2d904
Add support for DWARF 4 DW_AT_linkage_name. r=ted
https://hg.mozilla.org/integration/autoland/rev/6effe4ad8ac3
Fall back to the raw symbol name from DW_AT_MIPS_linkage_name when there is nothing else. r=ted
https://hg.mozilla.org/mozilla-central/rev/fbb3d4a2d904
https://hg.mozilla.org/mozilla-central/rev/6effe4ad8ac3
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → 62
(In reply to Ted Mielczarek [:ted.mielczarek] from comment #8)
> Comment on attachment 8981278 [details]
> Bug 1464537 - Add support for DWARF 4 DW_AT_linkage_name.
> 
> https://reviewboard.mozilla.org/r/247378/#review254038
> 
> This should go upstream as well. If you submit it for upstream review I can
> land it there.

That one is already supported upstream:
https://chromium.googlesource.com/breakpad/breakpad/+/7398ce15b79daf038cd07fbae4e37e183e99788d

almost 2 years...
Perf metrics are now pouring in. Looks like the test is back online.

== Change summary for alert #13557 (as of Wed, 30 May 2018 19:01:31 GMT) ==

Regressions:

  0%  compiler_metrics num_static_constructors osx-cross opt      0.00 -> 96.08
  0%  compiler_metrics num_static_constructors android-4-0-armv7-api16 opt 0.00 -> 87.08
  0%  compiler_metrics num_static_constructors android-4-2-x86 opt 0.00 -> 88.08
  0%  compiler_metrics num_static_constructors osx-cross debug    0.00 -> 198.00
  0%  compiler_metrics num_static_constructors android-5-0-aarch64 opt 0.00 -> 87.08
  0%  compiler_metrics num_static_constructors android-4-0-armv7-api16 debug 0.00 -> 116.08

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=13557
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: