Closed Bug 827271 Opened 12 years ago Closed 12 years ago

Please add support for Aarch64 (64-Bit ARM)

Categories

(NSPR :: NSPR, defect, P2)

4.9.4
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: riku.voipio, Assigned: riku.voipio)

References

Details

Attachments

(1 file, 1 obsolete file)

Attached patch fix-build-on-aarch64.patch (obsolete) — Splinter Review
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4 Steps to reproduce: Tried to compile NSPR for Aarch64 (64-Bit ARM). Instructions howto build for Aarch64 is here: https://wiki.linaro.org/HowTo/ARMv8/OpenEmbedded Note that the meta-aarch64 layer includes already the patch attached to this bug. Actual results: NSPR does not compile on 64-Bit ARM. With the attached patch, (originally written by Al Stone, With my additions and fixes) NSPR compiles for Aarch64, and passes most testsuite tests. The remaining failing tests: multiwait FAILED - timeout due to slow emulator nameshm1 FAILED semaerr FAILED - Both hang on semaphore issues. Sema and semaping tests pass. servr_kk FAILED servr_uk FAILED servr_ku FAILED servr_uu FAILED - These tests provide no useful debug output foreign FAILED provider FAILED - These hardcode thread stack size 64K, which is less than the minimum stack size on Aarch64. Theses tests are broken in this regard and should take in account PTHREAD_STACK_MIN size.
Thank you for the patch. I will take a look at it.
Assignee: wtc → riku.voipio
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Priority: -- → P2
Target Milestone: --- → 4.9.5
Attachment #698613 - Flags: review?(wtc)
I listed the new aarch64 code right below the arm code because they are closely related. We should look into the _MD_MINIMUM_STACK_SIZE issue. I still checked in your _MD_MINIMUM_STACK_SIZE change, but we should try to avoid it. Perhaps the test program should not specify a stack size? http://mxr.mozilla.org/nspr/ident?i=_MD_MINIMUM_STACK_SIZE Patch checked in on the NSPR trunk (NSPR 4.9.6). Checking in _linux.cfg; /cvsroot/mozilla/nsprpub/pr/include/md/_linux.cfg,v <-- _linux.cfg new revision: 3.30; previous revision: 3.29 done Checking in _linux.h; /cvsroot/mozilla/nsprpub/pr/include/md/_linux.h,v <-- _linux.h new revision: 3.64; previous revision: 3.63 done
Attachment #698613 - Attachment is obsolete: true
Attachment #698613 - Flags: review?(wtc)
Attachment #712279 - Flags: checked-in+
Attachment #712279 - Attachment description: fix-build-on-aarch64.patch, v2, by Riku Voipio → fix-build-on-aarch64.patch, v2, by Al Stone and Riku Voipio
Target Milestone: 4.9.5 → 4.9.6
> Patch checked in on the NSPR trunk (NSPR 4.9.6). Thanks! > Perhaps the test program should not specify a stack size? I think this would be the correct solution, I don't understand why the tests need to set stack size. But that's for another bug.
Riku: Thanks for the reply. OK, we'll deal with the 'foreign' and 'provider' tests in another bug. Marked the bug fixed.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Blocks: 962534
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: