aboutsummaryrefslogtreecommitdiff
path: root/sys/powerpc/aim
diff options
context:
space:
mode:
authorMark Johnston <markj@FreeBSD.org>2020-09-02 18:16:43 +0000
committerMark Johnston <markj@FreeBSD.org>2020-09-02 18:16:43 +0000
commit847ab36bf22766020077f06f6a8d278f8b081655 (patch)
tree039e24912a42c2379afa8cc204f216d3bdbb76d9 /sys/powerpc/aim
parent2825bf5b2a209d626a50e97ce98d508464d32366 (diff)
downloadsrc-847ab36bf22766020077f06f6a8d278f8b081655.tar.gz
src-847ab36bf22766020077f06f6a8d278f8b081655.zip
Include the psind in data returned by mincore(2).
Currently we use a single bit to indicate whether the virtual page is part of a superpage. To support a forthcoming implementation of non-transparent 1GB superpages, it is useful to provide more detailed information about large page sizes. The change converts MINCORE_SUPER into a mask for MINCORE_PSIND(psind) values, indicating a mapping of size psind, where psind is an index into the pagesizes array returned by getpagesizes(3), which in turn comes from the hw.pagesizes sysctl. MINCORE_PSIND(1) is equal to the old value of MINCORE_SUPER. For now, two bits are used to record the page size, permitting values of MAXPAGESIZES up to 4. Reviewed by: alc, kib Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D26238
Notes
Notes: svn path=/head/; revision=365267
Diffstat (limited to 'sys/powerpc/aim')
-rw-r--r--sys/powerpc/aim/mmu_radix.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/powerpc/aim/mmu_radix.c b/sys/powerpc/aim/mmu_radix.c
index e2deb68705c2..608d17e1a556 100644
--- a/sys/powerpc/aim/mmu_radix.c
+++ b/sys/powerpc/aim/mmu_radix.c
@@ -5689,7 +5689,7 @@ mmu_radix_mincore(pmap_t pmap, vm_offset_t addr, vm_paddr_t *locked_pa)
/* Compute the physical address of the 4KB page. */
pa = ((*l3ep & PG_PS_FRAME) | (addr & L3_PAGE_MASK)) &
PG_FRAME;
- val = MINCORE_SUPER;
+ val = MINCORE_PSIND(1);
} else {
pte = *pmap_l3e_to_pte(l3ep, addr);
pa = pte & PG_FRAME;