]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Stop using the kmem for PCPU memory on arm64
authorAndrew Turner <andrew@FreeBSD.org>
Wed, 27 Apr 2022 13:42:21 +0000 (14:42 +0100)
committerAndrew Turner <andrew@FreeBSD.org>
Wed, 27 Apr 2022 14:16:35 +0000 (15:16 +0100)
commitd33bf8c50bd7359e75732aab0b905f9ba7f13e2c
treed5cda82ef2ad5bff36ef3e33a994a9b353ff9c9d
parent5acfa48bb2585adfb8ceeacb695c6e6cc660894d
Stop using the kmem for PCPU memory on arm64

When allocating memory with a kernel memory allocator we may get
memory that will later be promoted to a superpage. If this happens
while another CPU is using the pointer they can race and when the
promotion passes through the break-before-make sequence the pointer
will be invalid for a short length of time.

Revert the commit that added the use of the kernel allocator and
subsequent fixes to the original change.

Revert "Pass the ACPI ID when reading the ACPI domain"

This reverts commit aa3b5d79b2acc508cca63c24251d65f4d2d76fa5.

Revert "Stop reading the arm64 domain when it's known"

This reverts commit b7c23efd7428256f69ccfd65a9c5e9f50585bf66.

Revert "Allocate arm64 per-CPU data in the correct domain"

This reverts commit f51997c6e410e2413686983d8fd57c1877f8c0ad.

Approved by: re (gjb)
Reported by: dch
Sponsored by: The FreeBSD Foundation
sys/arm64/arm64/machdep.c
sys/arm64/arm64/mp_machdep.c
sys/arm64/include/counter.h
sys/arm64/include/pcpu_aux.h