Closed Bug 997353 Opened 6 years ago Closed 1 year ago

Do not use compile-time page size for PowerPC

Categories

(Core :: Memory Allocator, defect)

PowerPC
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla69
Tracking Status
firefox68 --- fixed
firefox69 --- fixed

People

(Reporter: gustavold, Assigned: gustavold)

Details

Attachments

(1 file, 1 obsolete file)

The PowerPC architecture allows various memory page sizes and the possible page sizes are not bound to 64 or 32 bits, making it impossible to predict the runtime page size.

If I try to run the JS engine (built for 32 bits) on top of a kernel configured with 64k memory page size, I get the message "Compile-time page size does not divide the runtime one". That is because jemalloc assumes PPC32 has 4k page size while PPC64 has 64k page size. No such assumption can be made for the PowerPC architecture.

This is a real use-case for the Fedora PowerPC infrastructure, as we use PPC64 servers to build 32bit binary packages, and we have been carrying this patch since mozilla-11 (no idea why no one ever sent it upstream until now).
Comment on attachment 8407737 [details] [diff] [review]
Disable MALLOC_STATIC_SIZES on PowerPC

Green on Try.

https://tbpl.mozilla.org/?tree=Try&rev=438f9bf04477
This shouldn't affect TenFourFox since we don't actually use jemalloc.

glandium is probably the right reviewer for this, or knows who would be.
Assignee: nobody → gustavold
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true

powerpc covers powerpc and powerpc64.

Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/05a653181a64
Make powerpc not use static page sizes in mozjemalloc. r=njn

Comment on attachment 9069876 [details]
Bug 997353 - Make powerpc not use static page sizes in mozjemalloc.

Beta/Release Uplift Approval Request

  • User impact if declined: Startup crash on powerpc (tier 3). This has been the case for a long time, and in many cases, downstreams have been patching this for just as long. It would be nice to get this in ESR68 so that the amount of required patching decreases.
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: No
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): The patch adds a preprocessor condition to include powerpc. It's practically NPOTB.
  • String changes made/needed:
Attachment #9069876 - Flags: approval-mozilla-beta?
Attachment #8407737 - Attachment is obsolete: true

Comment on attachment 9069876 [details]
Bug 997353 - Make powerpc not use static page sizes in mozjemalloc.

tier3 fix, approved for 68.0b8

Attachment #9069876 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla69
You need to log in before you can comment on or make changes to this bug.