Keep more information about the established LPI around, so that we can use
authorpatrick <patrick@openbsd.org>
Fri, 7 Jul 2023 10:11:39 +0000 (10:11 +0000)
committerpatrick <patrick@openbsd.org>
Fri, 7 Jul 2023 10:11:39 +0000 (10:11 +0000)
commitf83e6fb8171b1ac7c849f2be7e06799114174ffc
treec2875145aaf23578d58a6bbde3c35a4013060950
parent9c3341465a6917689bebb3e464ce8b356111d657
Keep more information about the established LPI around, so that we can use
targeted invalidation through INV instead of flushing the whole cache through
INVALL.  Having this information enables us to send DISCARD, which clears the
mapping from the ITT.  This seems to be necessary to make the Hetzner VM's ITS
happy when we try to disestablish and re-establish an LPI.

This also moves the LPI table completely into agintc(4), as LPIs are global to
an agintc(4) and especially with multiple agintcmsi(4) they should be unique.

Tested by claudio@
ok kettenis@
sys/arch/arm64/dev/agintc.c