Skip to content

arm64: runtime workaround for erratum #843419

Will Deacon linux-arm-kernel 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest0 of 2 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 2 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH v1 0/2] arm64: runtime workaround for erratum #843419

Hi Ard,

Quoted 8 lines · Ard Biesheuvel

This implements a workaround for the A53 erratum that may result in adrp instructions to produce incorrect values if they appear in either of the last two instruction slots of a 4 KB page.

Instead of building modules using the large code model, this approach uses veneers to call the adrp instructions at unaffected offsets, unless they can be converted into adr instructions, which is even better (this depends on whether the symbol is with 1 MB of the place)

As discussed at Connect, we should evaluate the performance penalty of the existing workaround before making this more complicated. I tried to do that today by building xfs as a module, then copying an xfs disk image containing a git clone of the kernel into tmpfs, loop mounting that and md5summing all of the files.

The performance eppears to be the same with and without the errata workaround enabled, but I wondered if you had a better idea for a test (short of writing a synthetic module)?

Will