]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Move the objects used to create temporary mappings for i386 pmap zero and copy
authorjah <jah@FreeBSD.org>
Fri, 23 Dec 2016 15:14:56 +0000 (15:14 +0000)
committerjah <jah@FreeBSD.org>
Fri, 23 Dec 2016 15:14:56 +0000 (15:14 +0000)
commit173cd7bef32db91120d38e2c4ffbedec17ddc335
tree2925efdf32c95d59d736896f79ebc6451d871639
parent81fd1b9f5cb282f36b642bc559e5946197d3e1d0
Move the objects used to create temporary mappings for i386 pmap zero and copy
operations to the MD PCPU region.  Change sysmap initialization to only
allocate KVA pages for CPUs that are actually present.  As a minor
optimization, this also prevents false sharing between adjacent sysmap objects
since the pcpu struct is already cacheline-aligned.

While here, move pc_qmap_addr initialization for the BSP into
pmap_bootstrap(), which allows use of pmap_quick* functions during early boot.

Reviewed by: kib
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D8833
sys/i386/i386/pmap.c
sys/i386/include/pcpu.h