/illumos-gate/usr/src/uts/common/os/ |
H A D | vmem.c | 404 vmem_getseg(vmem_t *vmp) in vmem_getseg() argument 408 ASSERT(vmp->vm_nsegfree > 0); in vmem_getseg() 410 vsp = vmp->vm_segfree; in vmem_getseg() 411 vmp->vm_segfree = vsp->vs_knext; in vmem_getseg() 412 vmp->vm_nsegfree--; in vmem_getseg() 421 vmem_putseg(vmem_t *vmp, vmem_seg_t *vsp) in vmem_putseg() argument 423 vsp->vs_knext = vmp->vm_segfree; in vmem_putseg() 424 vmp->vm_segfree = vsp; in vmem_putseg() 425 vmp->vm_nsegfree++; in vmem_putseg() 432 vmem_freelist_insert(vmem_t *vmp, vmem_seg_t *vsp) in vmem_freelist_insert() argument [all …]
|
H A D | kmem.c | 1507 vmem_t *vmp = cp->cache_arena; in kmem_slab_create() local 1516 slab = vmem_alloc(vmp, slabsize, kmflag & KM_VMFLAGS); in kmem_slab_create() 1521 ASSERT(P2PHASE((uintptr_t)slab, vmp->vm_quantum) == 0); in kmem_slab_create() 1597 vmem_free(vmp, slab, slabsize); in kmem_slab_create() 1613 vmem_t *vmp = cp->cache_arena; in kmem_slab_destroy() local 1614 void *slab = (void *)P2ALIGN((uintptr_t)sp->slab_base, vmp->vm_quantum); in kmem_slab_destroy() 1627 vmem_free(vmp, slab, cp->cache_slabsize); in kmem_slab_destroy() 3004 kmem_firewall_va_alloc(vmem_t *vmp, size_t size, int vmflag) in kmem_firewall_va_alloc() argument 3006 size_t realsize = size + vmp->vm_quantum; in kmem_firewall_va_alloc() 3029 addr = vmem_alloc(vmp, realsize, vmflag | VM_NEXTFIT); in kmem_firewall_va_alloc() [all …]
|
/illumos-gate/usr/src/lib/libumem/common/ |
H A D | vmem.c | 272 vmem_getseg(vmem_t *vmp) in vmem_getseg() argument 276 ASSERT(vmp->vm_nsegfree > 0); in vmem_getseg() 278 vsp = vmp->vm_segfree; in vmem_getseg() 279 vmp->vm_segfree = vsp->vs_knext; in vmem_getseg() 280 vmp->vm_nsegfree--; in vmem_getseg() 289 vmem_putseg(vmem_t *vmp, vmem_seg_t *vsp) in vmem_putseg() argument 291 vsp->vs_knext = vmp->vm_segfree; in vmem_putseg() 292 vmp->vm_segfree = vsp; in vmem_putseg() 293 vmp->vm_nsegfree++; in vmem_putseg() 300 vmem_freelist_insert(vmem_t *vmp, vmem_seg_t *vsp) in vmem_freelist_insert() argument [all …]
|
H A D | umem.c | 1409 vmem_t *vmp = cp->cache_arena; in umem_slab_create() local 1416 slab = vmem_alloc(vmp, slabsize, UMEM_VMFLAGS(umflag)); in umem_slab_create() 1421 ASSERT(P2PHASE((uintptr_t)slab, vmp->vm_quantum) == 0); in umem_slab_create() 1488 vmem_free(vmp, slab, slabsize); in umem_slab_create() 1504 vmem_t *vmp = cp->cache_arena; in umem_slab_destroy() local 1505 void *slab = (void *)P2ALIGN((uintptr_t)sp->slab_base, vmp->vm_quantum); in umem_slab_destroy() 1515 vmem_free(vmp, slab, cp->cache_slabsize); in umem_slab_destroy() 2269 umem_firewall_va_alloc(vmem_t *vmp, size_t size, int vmflag) in umem_firewall_va_alloc() argument 2271 size_t realsize = size + vmp->vm_quantum; in umem_firewall_va_alloc() 2285 return (vmem_alloc(vmp, realsize, vmflag | VM_NEXTFIT)); in umem_firewall_va_alloc() [all …]
|
H A D | vmem_base.h | 46 extern void *_vmem_extend_alloc(vmem_t *vmp, void *vaddr, size_t size,
|
/illumos-gate/usr/src/uts/sun4v/io/ |
H A D | vio_util.c | 55 vio_mblk_t *vmp; in vio_create_mblks() local 92 vmp = &(vmplp->basep[i]); in vio_create_mblks() 93 vmp->vmplp = vmplp; in vio_create_mblks() 94 vmp->datap = datap; in vio_create_mblks() 95 vmp->reclaim.free_func = vio_freeb; in vio_create_mblks() 96 vmp->reclaim.free_arg = (caddr_t)vmp; in vio_create_mblks() 97 vmp->mp = desballoc(vmp->datap, mblk_size, BPRI_MED, in vio_create_mblks() 98 &vmp->reclaim); in vio_create_mblks() 100 if (vmp->mp == NULL) { in vio_create_mblks() 115 vmp->index = i; in vio_create_mblks() [all …]
|
H A D | vnet_txdring.c | 447 vio_mblk_pool_t *vmp = NULL; in vgen_unmap_rx_dring() local 450 vio_destroy_multipools(&ldcp->vmp, &vmp); in vgen_unmap_rx_dring() 451 if (vmp != NULL) { in vgen_unmap_rx_dring() 461 vgen_destroy_rxpools, vmp, DDI_SLEEP); in vgen_unmap_rx_dring() 511 status = vio_init_multipools(&ldcp->vmp, in vgen_init_multipools() 518 status = vio_init_multipools(&ldcp->vmp, in vgen_init_multipools() 540 status = vio_init_multipools(&ldcp->vmp, VGEN_NUM_VMPOOLS, in vgen_init_multipools() 557 status = vio_init_multipools(&ldcp->vmp, VGEN_NUM_VMPOOLS + 1, in vgen_init_multipools() 570 status = vio_init_multipools(&ldcp->vmp, VGEN_NUM_VMPOOLS + 1, in vgen_init_multipools() 977 vio_mblk_t *vmp = NULL; in vgen_process_dringdata() local [all …]
|
H A D | vsw_txdring.c | 502 vio_destroy_multipools(&ldcp->vmp, &fvmp); in vsw_unmap_rx_dring() 545 rv = vio_init_multipools(&ldcp->vmp, in vsw_init_multipools() 552 rv = vio_init_multipools(&ldcp->vmp, in vsw_init_multipools() 576 rv = vio_init_multipools(&ldcp->vmp, VSW_NUM_VMPOOLS, in vsw_init_multipools() 593 rv = vio_init_multipools(&ldcp->vmp, VSW_NUM_VMPOOLS + 1, in vsw_init_multipools() 607 rv = vio_init_multipools(&ldcp->vmp, VSW_NUM_VMPOOLS + 1, in vsw_init_multipools() 1029 vio_mblk_t *vmp = NULL; in vsw_process_dringdata() local 1184 vmp = NULL; in vsw_process_dringdata() 1186 vmp = vio_multipool_allocb(&ldcp->vmp, nbytes); in vsw_process_dringdata() 1187 if (vmp == NULL) { in vsw_process_dringdata() [all …]
|
H A D | vsw_rxdring.c | 253 vio_mblk_t *vmp; in vsw_setup_rx_dring() local 347 vmp = vio_allocb(dp->rx_vmp); in vsw_setup_rx_dring() 348 ASSERT(vmp != NULL); in vsw_setup_rx_dring() 349 rxdp->data_buf_offset = VIO_MBLK_DATA_OFF(vmp) + VNET_IPALIGN; in vsw_setup_rx_dring() 351 rxdp_to_vmp[i] = vmp; in vsw_setup_rx_dring() 718 vio_mblk_t *vmp; in vsw_receive_packet() local 732 vmp = dp->rxdp_to_vmp[rxi]; in vsw_receive_packet() 749 (VIO_MBLK_DATA_OFF(vmp) + VNET_IPALIGN))) { in vsw_receive_packet() 770 mp = vmp->mp; in vsw_receive_packet() 788 vmp->state = VIO_MBLK_HAS_DATA; in vsw_receive_packet()
|
H A D | vnet_rxdring.c | 122 vio_mblk_t *vmp; in vgen_create_rx_dring() local 237 vmp = vio_allocb(ldcp->rx_vmp); in vgen_create_rx_dring() 238 ASSERT(vmp != NULL); in vgen_create_rx_dring() 239 rxdp->data_buf_offset = VIO_MBLK_DATA_OFF(vmp) + VNET_IPALIGN; in vgen_create_rx_dring() 241 rxdp_to_vmp[i] = vmp; in vgen_create_rx_dring() 1052 vio_mblk_t *vmp; in vgen_receive_packet() local 1065 vmp = ldcp->rxdp_to_vmp[rxi]; in vgen_receive_packet() 1085 (VIO_MBLK_DATA_OFF(vmp) + VNET_IPALIGN))) { in vgen_receive_packet() 1105 mp = vmp->mp; in vgen_receive_packet() 1127 vmp->state = VIO_MBLK_HAS_DATA; in vgen_receive_packet()
|
/illumos-gate/usr/src/uts/intel/io/vmm/ |
H A D | vmm_vm.c | 1204 for (vm_page_t *vmp = list_head(&vmc->vmc_held_pages); in vmc_space_unmap() local 1205 vmp != NULL; in vmc_space_unmap() 1206 vmp = list_next(&vmc->vmc_held_pages, vmc)) { in vmc_space_unmap() 1207 if (vmp->vmp_gpa < addr || in vmc_space_unmap() 1208 vmp->vmp_gpa >= (addr + size)) { in vmc_space_unmap() 1212 if (vmp->vmp_obj_ref == NULL) { in vmc_space_unmap() 1214 vmp->vmp_obj_ref = vmo; in vmc_space_unmap() 1216 vmp->vmp_ptep = NULL; in vmc_space_unmap() 1222 VERIFY3P(vmp->vmp_ptep, ==, NULL); in vmc_space_unmap() 1252 for (vm_page_t *vmp = list_head(&vmc->vmc_held_pages); in vmc_space_orphan() local [all …]
|
H A D | seg_vmm.c | 312 vm_page_t *vmp; in segvmm_fault_space() local 315 vmp = vmc_hold(vmc, off, prot); in segvmm_fault_space() 316 if (vmp == NULL) { in segvmm_fault_space() 320 pfn = vmp_get_pfn(vmp); in segvmm_fault_space() 326 if (vmp_release(vmp)) { in segvmm_fault_space()
|
/illumos-gate/usr/src/uts/common/vm/ |
H A D | seg_kmem.c | 205 hat_memload_alloc(vmem_t *vmp, size_t size, int flags) in hat_memload_alloc() argument 208 return (segkmem_alloc(vmp, size, flags)); in hat_memload_alloc() 218 segkmem_alloc_permanent(vmem_t *vmp, size_t size, int flags) in segkmem_alloc_permanent() argument 220 return (segkmem_alloc(vmp, size, flags | VM_NORELOC)); in segkmem_alloc_permanent() 870 segkmem_xalloc(vmem_t *vmp, void *inaddr, size_t size, int vmflag, uint_t attr, in segkmem_xalloc() argument 878 if (inaddr == NULL && (addr = vmem_alloc(vmp, size, vmflag)) == NULL) in segkmem_xalloc() 885 vmem_free(vmp, addr, size); in segkmem_xalloc() 892 vmem_free(vmp, addr, size); in segkmem_xalloc() 940 segkmem_alloc_vn(vmem_t *vmp, size_t size, int vmflag, struct vnode *vp) in segkmem_alloc_vn() argument 960 if (gcp->gc_arena == vmp && gcp->gc_size == size) { in segkmem_alloc_vn() [all …]
|
/illumos-gate/usr/src/contrib/ast/src/lib/libast/vmalloc/ |
H A D | vmopen.c | 64 Vmalloc_t *vm, *vmp, vmproto; local 78 vmp = &vmproto; /* avoid memory allocation here! */ 79 memset(vmp, 0, sizeof(Vmalloc_t)); 80 memcpy(&vmp->meth, meth, sizeof(Vmethod_t)); 81 vmp->disc = disc; 88 if((rv = (*disc->exceptf)(vmp,VM_OPEN,(Void_t*)(&addr),disc)) < 0) 107 if(!(addr = (Vmuchar_t*)(*disc->memoryf)(vmp, NIL(Void_t*), 0, size, disc)) ) 163 (void)(*disc->memoryf)(vmp, addr, size, 0, disc); 166 memcpy(vm, vmp, sizeof(Vmalloc_t));
|
/illumos-gate/usr/src/uts/intel/io/viona/ |
H A D | viona_ring.c | 139 vmm_page_t *vmp; in vq_region_hold() local 152 vmp = vq_page_hold(ring, gpa & PAGEMASK, writable); in vq_region_hold() 153 if (vmp == NULL) { in vq_region_hold() 156 buf = (caddr_t)vmm_drv_page_readable(vmp); in vq_region_hold() 164 region->vhr_head = vmp; in vq_region_hold() 165 region->vhr_tail = vmp; in vq_region_hold() 167 vmm_drv_page_chain(region->vhr_tail, vmp); in vq_region_hold() 168 region->vhr_tail = vmp; in vq_region_hold() 174 vmp = vq_page_hold(ring, gpa, writable); in vq_region_hold() 175 if (vmp == NULL) { in vq_region_hold() [all …]
|
/illumos-gate/usr/src/uts/sun4v/vm/ |
H A D | mach_vm_dep.c | 424 contig_mem_span_alloc(vmem_t *vmp, size_t size, int vmflag) in contig_mem_span_alloc() argument 438 if ((addr = vmem_xalloc(vmp, size, size, 0, 0, in contig_mem_span_alloc() 447 vmem_xfree(vmp, addr, size); in contig_mem_span_alloc() 459 vmem_xfree(vmp, addr, size); in contig_mem_span_alloc() 509 span_alloc_downsize(vmem_t *vmp, size_t *sizep, size_t align, int vmflag) in span_alloc_downsize() argument 530 addr = contig_mem_span_alloc(vmp, page_size, vmflag); in span_alloc_downsize() 543 contig_mem_span_xalloc(vmem_t *vmp, size_t *sizep, size_t align, int vmflag) in contig_mem_span_xalloc() argument 545 return (span_alloc_downsize(vmp, sizep, align, vmflag | VM_NORELOC)); in contig_mem_span_xalloc() 549 contig_mem_reloc_span_xalloc(vmem_t *vmp, size_t *sizep, size_t align, in contig_mem_reloc_span_xalloc() argument 553 return (span_alloc_downsize(vmp, sizep, align, vmflag)); in contig_mem_reloc_span_xalloc() [all …]
|
/illumos-gate/usr/src/lib/libumem/common/sys/ |
H A D | vmem_impl_user.h | 81 #define VMEM_HASH(vmp, addr) \ argument 82 (&(vmp)->vm_hash_table[VMEM_HASH_INDEX(addr, \ 83 (vmp)->vm_hash_shift, (vmp)->vm_qshift, (vmp)->vm_hash_mask)])
|
/illumos-gate/usr/src/uts/common/sys/ |
H A D | vmem_impl.h | 82 #define VMEM_HASH(vmp, addr) \ argument 83 (&(vmp)->vm_hash_table[VMEM_HASH_INDEX(addr, \ 84 (vmp)->vm_hash_shift, (vmp)->vm_qshift, (vmp)->vm_hash_mask)])
|
H A D | vmem.h | 146 extern void vmem_qcache_reap(vmem_t *vmp);
|
/illumos-gate/usr/src/uts/sun4v/sys/ |
H A D | vio_util.h | 144 #define VIO_MBLK_DATA_OFF(vmp) ((vmp)->datap - ((vmp)->vmplp)->datap) argument
|
/illumos-gate/usr/src/uts/i86pc/os/ |
H A D | ddi_impl.c | 999 segkmem_free_io(vmem_t *vmp, void *ptr, size_t size) in segkmem_free_io() argument 1002 segkmem_xfree(vmp, ptr, size, &kvp, page_destroy_io); in segkmem_free_io() 1007 segkmem_alloc_io_4P(vmem_t *vmp, size_t size, int vmflag) in segkmem_alloc_io_4P() argument 1009 return (segkmem_xalloc(vmp, NULL, size, vmflag, 0, in segkmem_alloc_io_4P() 1014 segkmem_alloc_io_64G(vmem_t *vmp, size_t size, int vmflag) in segkmem_alloc_io_64G() argument 1016 return (segkmem_xalloc(vmp, NULL, size, vmflag, 0, in segkmem_alloc_io_64G() 1021 segkmem_alloc_io_4G(vmem_t *vmp, size_t size, int vmflag) in segkmem_alloc_io_4G() argument 1023 return (segkmem_xalloc(vmp, NULL, size, vmflag, 0, in segkmem_alloc_io_4G() 1028 segkmem_alloc_io_2G(vmem_t *vmp, size_t size, int vmflag) in segkmem_alloc_io_2G() argument 1030 return (segkmem_xalloc(vmp, NULL, size, vmflag, 0, in segkmem_alloc_io_2G() [all …]
|
/illumos-gate/usr/src/lib/libfakekernel/common/ |
H A D | kmem.c | 87 vmem_t *vmp, /* vmem source for slab allocation */ in kmem_cache_create() argument 103 private, vmp, ucflags); in kmem_cache_create() 149 vmem_qcache_reap(struct vmem *vmp) in vmem_qcache_reap() argument
|
/illumos-gate/usr/src/uts/sun4/vm/ |
H A D | sfmmu.c | 1115 sfmmu_tsb_xalloc(vmem_t *vmp, void *inaddr, size_t size, int vmflag, in sfmmu_tsb_xalloc() argument 1132 if ((inaddr == NULL) && ((addr = vmem_xalloc(vmp, size, size, 0, 0, in sfmmu_tsb_xalloc() 1138 vmem_xfree(vmp, addr, size); in sfmmu_tsb_xalloc() 1145 vmem_xfree(vmp, addr, size); in sfmmu_tsb_xalloc() 1178 sfmmu_tsb_segkmem_alloc(vmem_t *vmp, size_t size, int vmflag) in sfmmu_tsb_segkmem_alloc() argument 1189 vmp != kmem_tsb_default_arena[lgrpid]; lgrpid++) in sfmmu_tsb_segkmem_alloc() 1195 return (sfmmu_tsb_xalloc(vmp, NULL, size, vmflag, 0, in sfmmu_tsb_segkmem_alloc() 1201 sfmmu_tsb_segkmem_free(vmem_t *vmp, void *inaddr, size_t size) in sfmmu_tsb_segkmem_free() argument 1232 if (vmp != NULL) in sfmmu_tsb_segkmem_free() 1233 vmem_xfree(vmp, inaddr, size); in sfmmu_tsb_segkmem_free()
|
/illumos-gate/usr/src/uts/common/io/ib/adapters/hermon/ |
H A D | hermon_rsrc.c | 386 vmem_t *vmp; in hermon_rsrc_fexch_alloc() local 399 vmp = fcoib->hfc_fexch_vmemp[portm1]; in hermon_rsrc_fexch_alloc() 400 addr = vmem_xalloc(vmp, num, num, 0, 0, NULL, NULL, flag | VM_FIRSTFIT); in hermon_rsrc_fexch_alloc() 415 vmem_xfree(vmp, addr, num); in hermon_rsrc_fexch_alloc() 429 vmem_xfree(vmp, addr, num); in hermon_rsrc_fexch_alloc() 445 vmem_xfree(vmp, addr, num); in hermon_rsrc_fexch_alloc() 483 vmem_t *vmp; in hermon_rsrc_rfci_alloc() local 496 vmp = fcoib->hfc_rfci_vmemp[portm1]; in hermon_rsrc_rfci_alloc() 497 addr = vmem_xalloc(vmp, num, num, 0, 0, NULL, NULL, flag | VM_FIRSTFIT); in hermon_rsrc_rfci_alloc() 512 vmem_xfree(vmp, addr, num); in hermon_rsrc_rfci_alloc() [all …]
|
/illumos-gate/usr/src/uts/common/io/ib/adapters/tavor/ |
H A D | tavor_rsrc.c | 1678 vmem_t *vmp; in tavor_rsrc_mbox_init() local 1726 vmp = vmem_create(info->mbi_rsrcname, in tavor_rsrc_mbox_init() 1729 if (vmp == NULL) { in tavor_rsrc_mbox_init() 1737 rsrc_pool->rsrc_vmp = vmp; in tavor_rsrc_mbox_init() 1789 vmem_t *vmp; in tavor_rsrc_hw_entries_init() local 1842 vmp = vmem_create(info->hwi_rsrcname, in tavor_rsrc_hw_entries_init() 1845 if (vmp == NULL) { in tavor_rsrc_hw_entries_init() 1855 rsrc_pool->rsrc_vmp = vmp; in tavor_rsrc_hw_entries_init() 2014 vmem_t *vmp; in tavor_rsrc_pd_handles_init() local 2034 vmp = vmem_create(vmem_name, (caddr_t)1, info->swi_num, 1, NULL, in tavor_rsrc_pd_handles_init() [all …]
|