Page MenuHomeFreeBSD

powerpc/moea: Fix moea64 native VA invalidation
ClosedPublic

Authored by jhibbits on May 29 2019, 10:36 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 22 2023, 11:16 PM
Unknown Object (File)
Nov 1 2023, 1:55 PM
Unknown Object (File)
Sep 30 2023, 1:55 PM
Unknown Object (File)
Aug 19 2023, 2:02 PM
Unknown Object (File)
Aug 6 2023, 8:27 AM
Unknown Object (File)
Aug 6 2023, 8:25 AM
Unknown Object (File)
Aug 6 2023, 8:24 AM
Unknown Object (File)
Aug 6 2023, 8:23 AM
Subscribers

Details

Summary

moea64_insert_pteg_native()'s invalidation only works by happenstance.
The purpose of the shifts and XORs is to extract the VSID in order to
reverse-engineer the lower bits of the VPN. Currently a segment size is 256MB
(2**28), and ADDR_API_SHFT64 is 16, so ADDR_PIDX_SHIFT is equivalent. However,
it's semantically incorrect, in that we don't want to shift by the page shift
size, we want to shift to get to the VSID.

Diff Detail

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

Event Timeline

sys/powerpc/aim/moea64_native.c
652 ↗(On Diff #58058)

Woops, this mask should be right shifted by ADDR_PIDX_SHIFT

This revision was not accepted when it landed; it landed in state Needs Review.Jun 1 2019, 1:40 AM
This revision was automatically updated to reflect the committed changes.