Page MenuHomeFreeBSD

arm64: fix incorrect HWCAP definitions
ClosedPublic

Authored by mhorne on Sep 4 2020, 6:11 PM.
Tags
None
Referenced Files
Unknown Object (File)
Jan 14 2024, 11:49 PM
Unknown Object (File)
Dec 22 2023, 11:36 PM
Unknown Object (File)
Nov 15 2023, 5:46 AM
Unknown Object (File)
Nov 13 2023, 5:12 AM
Unknown Object (File)
Nov 9 2023, 7:26 AM
Unknown Object (File)
Nov 6 2023, 1:56 PM
Unknown Object (File)
Oct 11 2023, 4:24 AM
Unknown Object (File)
Oct 8 2023, 6:24 AM
Subscribers

Details

Summary

FreeBSD exports CPU features as bits in the AT_HWCAP and AT_HWCAP2
vectors via elf_aux_info(3). This interface is similar to getauxval(3)
on Linux, and for simplicity to consumers we try to maintain an
identical set of feature flags on arm64.

The first batch of AT_HWCAP flags were added in r350166, corresponding
to definitions that already existed in Linux. Unfortunately, one flag
was missed, and a portion of the values are shifted one bit to the right
as a result.

Add the missing definition for HWCAP_ASIMDHP, and fix the affected
values to match their Linux counterparts.

Although this is an ABI-breaking change, there is no plan to provide
compat code for old binaries. An audit of our ports tree and other
software via Debian code search suggests that there are not yet any
consumers of this interface for FreeBSD/arm64.

Diff Detail

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

Event Timeline

mhorne requested review of this revision.Sep 4 2020, 6:11 PM
mhorne created this revision.
sys/sys/param.h
63 ↗(On Diff #76657)

Does this need to be done as a separate commit?

sys/sys/param.h
63 ↗(On Diff #76657)

I think the reason it's usually done as a separate commit is because folks forget at the time of the original change.
You can commit it at the same time.

LGTM but let's get one of the primary arm64 developers to accept

This revision is now accepted and ready to land.Sep 5 2020, 4:03 PM

Should I try to get this included in 12.2? The branch is set to happen on the 11th (6 days from now).

This revision was automatically updated to reflect the committed changes.