OpenBSD cvs log

created 2021-03-16T14:31:57Z
begin 2021-03-08T10:54:53Z
end 2021-03-08T11:16:26Z
path src/sys
commits 1

date 2021-03-08T11:16:26Z
author kettenis
files src/sys/arch/arm64/arm64/pmap.c log diff annotate
src/sys/arch/arm64/include/pmap.h log diff annotate
message Revise the ASID allocation sheme to avoid a hang when running out of free
ASIDs. This should only happen on systems with 8-bit ASIDs, which are
currently unsupported in OpenBSD.

The new scheme uses "generations". Whenever we run out of ASIDs we bump
the generation and flush the complete TLB. The pmaps of processes that
are currently on the CPU are carried over into the new generation. This
implementation relies on the scheduler lock to make sure this happens
without any (known) races.

ok patrick@, mpi@