Page MenuHomeFreeBSD

retire arm64 kernel module linker workaround
ClosedPublic

Authored by emaste on Jun 22 2017, 2:40 PM.
Tags
None
Referenced Files
F106070474: D11302.diff
Tue, Dec 24, 9:45 PM
Unknown Object (File)
Thu, Dec 12, 3:13 PM
Unknown Object (File)
Sep 20 2024, 11:08 AM
Unknown Object (File)
Sep 19 2024, 10:05 PM
Unknown Object (File)
Sep 19 2024, 10:07 AM
Unknown Object (File)
Sep 18 2024, 6:45 PM
Unknown Object (File)
Sep 18 2024, 5:11 PM
Unknown Object (File)
Sep 18 2024, 6:16 AM
Subscribers
None

Details

Summary

Relocatable linking in aarch64 ld from binutils 2.25.1 does not work. The linker corrupts the references to the external symbols which are defined by other object in the linking set and should therefore lose the GOT entry.

The problem is fixed in later versions of GNU ld and does not exist in the in-tree lld linker that we now use by default for arm64, so the workaround can be removed.

Test Plan

Install on OverDrive 1000 a kernel + modules built with this change, verify modules can be loaded and operate correctly.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision is now accepted and ready to land.Jun 22 2017, 2:53 PM
This revision was automatically updated to reflect the committed changes.