diff options
author | Jake Burkholder <jake@FreeBSD.org> | 2002-08-18 02:09:27 +0000 |
---|---|---|
committer | Jake Burkholder <jake@FreeBSD.org> | 2002-08-18 02:09:27 +0000 |
commit | 8b53c815ec61af2cf15bf8b67cb472adb7eb5b4f (patch) | |
tree | 5417bb6532eaa247e7f078929c7d42f72a3ce98d /sys/sparc64/include/tsb.h | |
parent | b383a8478c66c87355dd618afd27f4d5c048d3d6 (diff) |
Add pmap support for user mappings of multiple page sizes (super pages).
This supports all hardware page sizes (8K, 64K, 512K, 4MB), but only 8k
pages are actually used as of yet.
Notes
Notes:
svn path=/head/; revision=102040
Diffstat (limited to 'sys/sparc64/include/tsb.h')
-rw-r--r-- | sys/sparc64/include/tsb.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/sparc64/include/tsb.h b/sys/sparc64/include/tsb.h index 20db029aff9d..9a817c20376f 100644 --- a/sys/sparc64/include/tsb.h +++ b/sys/sparc64/include/tsb.h @@ -55,9 +55,9 @@ tsb_vpntobucket(pmap_t pm, vm_offset_t vpn) } static __inline struct tte * -tsb_vtobucket(pmap_t pm, vm_offset_t va) +tsb_vtobucket(pmap_t pm, u_long sz, vm_offset_t va) { - return (tsb_vpntobucket(pm, va >> PAGE_SHIFT)); + return (tsb_vpntobucket(pm, va >> TTE_PAGE_SHIFT(sz))); } static __inline struct tte * @@ -77,7 +77,7 @@ typedef int (tsb_callback_t)(struct pmap *, struct pmap *, struct tte *, struct tte *tsb_tte_lookup(pmap_t pm, vm_offset_t va); void tsb_tte_remove(struct tte *stp); -struct tte *tsb_tte_enter(pmap_t pm, vm_page_t m, vm_offset_t va, +struct tte *tsb_tte_enter(pmap_t pm, vm_page_t m, vm_offset_t va, u_long sz, u_long data); void tsb_tte_local_remove(struct tte *tp); void tsb_foreach(pmap_t pm1, pmap_t pm2, vm_offset_t start, vm_offset_t end, |