/illumos-gate/usr/src/uts/intel/os/ |
H A D | ddi_arch.c | 148 * If we had an MMU, this is where you'd program the MMU and hat layer. 273 struct hat *hat, struct seg *seg, caddr_t addr, 285 rdip, hat, seg, addr, dp, pfn, prot, lock)); 272 i_ddi_map_fault(dev_info_t *dip, dev_info_t *rdip, struct hat *hat, struct seg *seg, caddr_t addr, struct devpage *dp, pfn_t pfn, uint_t prot, uint_t lock) argument
|
/illumos-gate/usr/src/uts/sparc/os/ |
H A D | ddi_arch.c | 113 * If we had an MMU, this is where you'd program the MMU and hat layer. 146 struct hat *hat, struct seg *seg, caddr_t addr, 158 rdip, hat, seg, addr, dp, pfn, prot, lock)); 145 i_ddi_map_fault(dev_info_t *dip, dev_info_t *rdip, struct hat *hat, struct seg *seg, caddr_t addr, struct devpage *dp, pfn_t pfn, uint_t prot, uint_t lock) argument
|
/illumos-gate/usr/src/uts/common/vm/ |
H A D | seg_kpm.c | 46 * See also hat layer for more information about the hat_kpm* routines. 65 #include <vm/hat.h> 103 faultcode_t segkpm_fault(struct hat *hat, struct seg *seg, caddr_t addr, 210 segkpm_fault(struct hat *hat, struct seg *seg, caddr_t addr, size_t len, argument 217 return (hat_kpm_fault(hat, addr)); 302 segkpm_fault(struct hat *hat, struct seg *seg, caddr_t addr, size_t len, argument
|
H A D | seg_kp.c | 72 #include <vm/hat.h> 92 static int segkp_unlock(struct hat *hat, struct seg *seg, caddr_t vaddr, 94 static int segkp_load(struct hat *hat, struct seg *seg, caddr_t vaddr, 930 struct hat *hat, 969 if ((err = segkp_load(hat, seg, vaddr, len, kpd, KPD_LOCKED))) { 1001 err = segkp_load(hat, seg, vaddr, len, kpd, kpd->kp_flags); 1028 err = segkp_unlock(hat, se 929 segkp_fault( struct hat *hat, struct seg *seg, caddr_t vaddr, size_t len, enum fault_type type, enum seg_rw rw) argument 1087 segkp_load( struct hat *hat, struct seg *seg, caddr_t vaddr, size_t len, struct segkp_data *kpd, uint_t flags) argument 1172 segkp_unlock( struct hat *hat, struct seg *seg, caddr_t vaddr, size_t len, struct segkp_data *kpd, uint_t flags) argument [all...] |
H A D | seg_kmem.c | 41 #include <vm/hat.h> 191 * vmflags so that segkmem_xalloc() can inform the hat layer that it needs 441 segkmem_fault(struct hat *hat, struct seg *seg, caddr_t addr, size_t size, argument 460 return (SEGOP_FAULT(hat, segkp, addr, size, type, rw)); 892 * In addition, the x86 hat cannot safely do memory
|
H A D | seg_map.c | 62 #include <vm/hat.h> 75 faultcode_t segmap_fault(struct hat *hat, struct seg *seg, caddr_t addr, 133 static void segmap_unlock(struct hat *hat, struct seg *seg, caddr_t addr, 492 struct hat *hat, 527 hat_unlock(hat, addr, P2ROUNDUP(len, PAGESIZE)); 583 struct hat *hat, 491 segmap_unlock( struct hat *hat, struct seg *seg, caddr_t addr, size_t len, enum seg_rw rw, struct smap *smp) argument 582 segmap_fault( struct hat *hat, struct seg *seg, caddr_t addr, size_t len, enum fault_type type, enum seg_rw rw) argument [all...] |
H A D | seg_dev.c | 65 #include <vm/hat.h> 117 * hat layers implement HAT_NOFAULT. 166 static faultcode_t segdev_fault(struct hat *, struct seg *, caddr_t, size_t, 226 static void segdev_softunlock(struct hat *, struct seg *, caddr_t, 229 static faultcode_t segdev_faultpage(struct hat *, struct seg *, caddr_t, 232 static faultcode_t segdev_faultpages(struct hat *, struct seg *, caddr_t, 1322 struct hat *hat, /* the hat */ 1338 hat_unlock(hat, add 1321 segdev_softunlock( struct hat *hat, struct seg *seg, caddr_t addr, size_t len, enum seg_rw rw) argument 1407 segdev_faultpage( struct hat *hat, struct seg *seg, caddr_t addr, struct vpage *vpage, enum fault_type type, enum seg_rw rw, devmap_handle_t *dhp) argument 1595 segdev_fault( struct hat *hat, struct seg *seg, caddr_t addr, size_t len, enum fault_type type, enum seg_rw rw) argument 1900 segdev_faultpages( struct hat *hat, struct seg *seg, caddr_t addr, size_t len, enum fault_type type, enum seg_rw rw, devmap_handle_t *dhp) argument [all...] |
H A D | seg_spt.c | 34 #include <vm/hat.h> 119 static faultcode_t segspt_shmfault(struct hat *hat, struct seg *seg, 1821 segspt_dismfault(struct hat *hat, struct seg *seg, caddr_t addr, argument 1842 hat = hat; 1894 * Fall through to the F_INVAL case to load up the hat layer 2004 segspt_shmfault(struct hat *hat, struc argument [all...] |
H A D | vm_as.c | 62 #include <vm/hat.h> 646 * information in the hat structure to be initialized. 672 as->a_hat = hat_alloc(as); /* create hat for default system mmu */ 680 * Need to free the hat first and then 687 struct hat *hat = as->a_hat; local 706 hat_free_start(hat); 755 hat_free_end(hat); 841 as_fault(struct hat *hat, struc argument [all...] |
/illumos-gate/usr/src/uts/sun4v/vm/ |
H A D | mach_kpm.c | 27 * Kernel Physical Mapping (segkpm) hat interface routines for sun4v. 31 #include <vm/hat.h> 201 hat_kpm_fault(struct hat *hat, caddr_t vaddr) argument
|
H A D | mach_vm_dep.c | 419 mmu_init_kernel_pgsz(struct hat *hat) argument
|
/illumos-gate/usr/src/uts/sun4u/cpu/ |
H A D | us3_common_mmu.c | 47 * and feed back into those two hat variables at hat initialization time, 68 * hat's disable_large_pages and disable_ism_large_pages variables. 69 * Currently the hat's disable_large_pages and disable_ism_large_pages 113 * sfmmu_pgsz[0] and sfmmu_pgsz[1], since these hat variables are used in 246 * sorted from largest to smallest #pages per pagesize in use by the hat code, 256 mmu_fixup_large_pages(struct hat *hat, uint64_t *ttecnt, uint8_t *tmp_pgsz) argument 263 * Don't program 2nd dtlb for kernel and ism hat 265 ASSERT(hat 322 mmu_setup_page_sizes(struct hat *hat, uint64_t *ttecnt, uint8_t *tmp_pgsz) argument 413 mmu_set_ctx_page_sizes(struct hat *hat) argument 570 mmu_init_kernel_pgsz(struct hat *hat) argument [all...] |
H A D | mach_cpu_module.c | 306 mmu_init_kernel_pgsz(struct hat *hat) argument
|
/illumos-gate/usr/src/uts/i86pc/vm/ |
H A D | hat_i86.h | 80 * The hat struct exists for each address space. 82 struct hat { struct 91 struct hat *hat_next; 92 struct hat *hat_prev; 101 typedef struct hat hat_t; 103 #define PGCNT_INC(hat, level) \ 104 atomic_inc_ulong(&(hat)->hat_pages_mapped[level]); 105 #define PGCNT_DEC(hat, level) \ 106 atomic_dec_ulong(&(hat)->hat_pages_mapped[level]); 118 * HAT_VICTIM - This is set while a hat i [all...] |
H A D | htable.c | 53 #include <vm/hat.h> 120 * instead of putting them in a hat's htable cache. 359 ht->ht_hat = NULL; /* no longer tied to a hat */ 436 htable_steal_active(hat_t *hat, uint_t cnt, uint_t threshold, argument 445 h = h_start = h_seed++ % hat->hat_num_hash; 449 for (ht = hat->hat_ht_hash[h]; ht; ht = ht->ht_next) { 511 ASSERT(hat->hat_ht_hash[h] == ht); 512 hat->hat_ht_hash[h] = ht->ht_next; 529 if (++h == hat->hat_num_hash) 535 * Move hat t 538 move_victim(hat_t *hat) argument 570 hat_t *hat = kas.a_hat; /* list starts with khat */ local 775 htable_alloc( hat_t *hat, uintptr_t vaddr, level_t level, htable_t *shared) argument 976 hat_t *hat = ht->ht_hat; local 1033 htable_purge_hat(hat_t *hat) argument 1095 hat_t *hat = old->ht_hat; local 1180 hat_t *hat; local 1283 htable_lookup(hat_t *hat, uintptr_t vaddr, level_t level) argument 1327 hat_t *hat = ht->ht_hat; local 1361 htable_create( hat_t *hat, uintptr_t vaddr, level_t level, htable_t *shared) argument 1483 htable_attach( hat_t *hat, uintptr_t base, level_t level, htable_t *parent, pfn_t pfn) argument 1671 htable_walk( struct hat *hat, htable_t **htp, uintptr_t *vaddr, uintptr_t eaddr) argument 1776 htable_getpte( struct hat *hat, uintptr_t vaddr, uint_t *entry, x86pte_t *pte, level_t level) argument 1810 htable_getpage(struct hat *hat, uintptr_t vaddr, uint_t *entry) argument 2103 hat_t *hat = ht->ht_hat; local 2497 hat_t *hat; local [all...] |
/illumos-gate/usr/src/cmd/make/lib/mksh/ |
H A D | globals.cc | 103 Name hat; variable
|
/illumos-gate/usr/src/uts/common/os/ |
H A D | vm_subr.c | 69 #include <vm/hat.h> 355 struct hat *hat; local 386 hat = as->a_hat; 397 res = hat_softlock(hat, uaddr, &size, &ppp[0], cow ? HAT_COW : 0);
|
/illumos-gate/usr/src/cmd/mdb/i86pc/modules/unix/ |
H A D | i86mmu.c | 158 static struct hat *khat; /* value of kas.a_hat */ 537 get_pte(hat_t *hat, htable_t *htable, uintptr_t addr) argument 544 uintptr_t ptr = (uintptr_t)hat->hat_vlp_ptes; 566 struct hat *hatp; 567 struct hat hat; local 588 * read the hat and its hash table 590 if (mdb_vread(&hat, sizeof (hat), (uintptr_t)hatp) == -1) { 591 mdb_warn("Couldn't read struct hat\ 720 struct hat hat; local 860 struct hat hat; local 979 struct hat hat; local 1020 hat_t *hat; local [all...] |
/illumos-gate/usr/src/cmd/oawk/ |
H A D | b.c | 460 wchar_t hat; local 475 hat = HAT; 476 hatcn = wcsetno(hat);
|
/illumos-gate/usr/src/uts/sun4/io/ |
H A D | rootnex.c | 63 struct hat *hat, struct seg *seg, caddr_t addr, 719 struct hat *hat, struct seg *seg, caddr_t addr, 741 if (hat == NULL) { 744 * a null hat i.e. use the first hat on the 745 * address space hat list which by convention is 746 * the hat of the system MMU. At alternative 750 hat 718 rootnex_map_fault(dev_info_t *dip, dev_info_t *rdip, struct hat *hat, struct seg *seg, caddr_t addr, struct devpage *dp, pfn_t pfn, uint_t prot, uint_t lock) argument [all...] |
/illumos-gate/usr/src/uts/i86xpv/vm/ |
H A D | seg_mf.c | 50 #include <vm/hat.h> 221 segmf_faultpage(struct hat *hat, struct seg *seg, caddr_t addr, argument 257 hat_devload(hat, addr, MMU_PAGESIZE, (pfn_t)0, 275 hat_unload(hat, addr, MMU_PAGESIZE, hat_flags); 300 segmf_softunlock(struct hat *hat, struct seg *seg, caddr_t addr, size_t len) argument 304 hat_unlock(hat, addr, len); 326 segmf_fault_range(struct hat *hat, struc argument 362 segmf_fault(struct hat *hat, struct seg *seg, caddr_t addr, size_t len, enum fault_type type, enum seg_rw rw) argument [all...] |
/illumos-gate/usr/src/uts/common/syscall/ |
H A D | lgrpsys.c | 60 struct hat *hat; local 194 hat = as->a_hat; 204 pfn = hat_getpfnum(hat, (caddr_t)vaddr); 239 pgsz = hat_getpagesize(hat,
|
/illumos-gate/usr/src/uts/sun4u/vm/ |
H A D | mach_kpm.c | 27 * Kernel Physical Mapping (segkpm) hat interface routines for sun4u. 31 #include <vm/hat.h> 306 hat_kpm_fault(struct hat *hat, caddr_t vaddr) argument 319 ASSERT(hat == ksfmmup); 1636 struct hat *tmphat;
|
/illumos-gate/usr/src/uts/common/io/ib/ibnex/ |
H A D | ibnex.c | 66 dev_info_t *, struct hat *, struct seg *, 892 ibnex_map_fault(dev_info_t *dip, dev_info_t *rdip, struct hat *hat, argument
|
/illumos-gate/usr/src/uts/i86pc/io/ |
H A D | rootnex.c | 50 #include <vm/hat.h> 196 struct hat *hat, struct seg *seg, caddr_t addr, 980 rootnex_map_fault(dev_info_t *dip, dev_info_t *rdip, struct hat *hat, argument 1002 if (hat == NULL) { 1005 * a null hat i.e. use the first hat on the 1006 * address space hat list which by convention is 1007 * the hat o [all...] |