Lines Matching defs:ks
281 static vm_pindex_t vm_kstack_pindex(vm_offset_t ks, int npages);
449 vm_offset_t ks;
460 ks = vm_thread_alloc_kstack_kva(ptoa(pages + KSTACK_GUARD_PAGES),
462 if (ks == 0)
464 ks += ptoa(KSTACK_GUARD_PAGES);
469 if (vm_thread_stack_back(ks, ma, pages, req, domain) != 0) {
470 vm_thread_free_kstack_kva(ks - ptoa(KSTACK_GUARD_PAGES),
475 pmap_qremove(ks - ptoa(KSTACK_GUARD_PAGES),
480 pmap_qenter(ks, ma, pages);
481 return (ks);
488 vm_thread_stack_dispose(vm_offset_t ks, int pages)
495 pindex = vm_kstack_pindex(ks, pages);
496 domain = vm_phys_domain(vtophys(ks));
497 pmap_qremove(ks, pages);
511 kasan_mark((void *)ks, ptoa(pages), ptoa(pages), 0);
512 vm_thread_free_kstack_kva(ks - (KSTACK_GUARD_PAGES * PAGE_SIZE),
522 vm_offset_t ks;
531 ks = 0;
533 ks = (vm_offset_t)uma_zalloc(kstack_cache, M_NOWAIT);
540 if (ks == 0)
541 ks = vm_thread_stack_create(DOMAINSET_PREF(PCPU_GET(domain)),
543 if (ks == 0)
546 ks_domain = vm_phys_domain(vtophys(ks));
548 ("%s: invalid domain for kstack %p", __func__, (void *)ks));
549 td->td_kstack = ks;
561 vm_offset_t ks;
565 ks = td->td_kstack;
570 kasan_mark((void *)ks, 0, ptoa(pages), KASAN_KSTACK_FREED);
571 uma_zfree(kstack_cache, (void *)ks);
573 vm_thread_stack_dispose(ks, pages);
584 vm_kstack_pindex(vm_offset_t ks, int kpages)
586 vm_pindex_t pindex = atop(ks - VM_MIN_KERNEL_ADDRESS);
611 vm_thread_stack_back(vm_offset_t ks, vm_page_t ma[], int npages, int req_class,
619 pindex = vm_kstack_pindex(ks, npages);
678 vm_offset_t ks;
682 ks = (vm_offset_t)store[i];
683 vm_thread_stack_dispose(ks, kstack_pages);