diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c @@ -326,13 +326,17 @@ { register_t cr0; + TSENTER(); cr0 = rcr0(); /* * CR0_MP, CR0_NE and CR0_TS are also set by npx_probe() for the * BSP. See the comments there about why we set them. */ cr0 |= CR0_MP | CR0_NE | CR0_TS | CR0_WP | CR0_AM; + TSENTER2("load_cr0"); load_cr0(cr0); + TSEXIT2("load_cr0"); + TSEXIT(); } /* diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -5049,6 +5049,7 @@ pdp_entry_t *pdpe; vm_offset_t end; + TSENTER(); mtx_assert(&kernel_map->system_mtx, MA_OWNED); /* @@ -5075,8 +5076,10 @@ */ if (KERNBASE < addr) { end = KERNBASE + nkpt * NBPDR; - if (end == 0) + if (end == 0) { + TSEXIT(); return; + } } else { end = kernel_vm_end; } @@ -5089,6 +5092,7 @@ * The grown region is already mapped, so there is * nothing to do. */ + TSEXIT(); return; } @@ -5136,6 +5140,7 @@ kernel_vm_end = end; else nkpt = howmany(end - KERNBASE, NBPDR); + TSEXIT(); } /*************************************************** diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -1201,6 +1201,7 @@ struct buf *bp; int i; + TSENTER(); KASSERT(maxbcachebuf >= MAXBSIZE, ("maxbcachebuf (%d) must be >= MAXBSIZE (%d)\n", maxbcachebuf, MAXBSIZE)); @@ -1336,6 +1337,7 @@ buffreekvacnt = counter_u64_alloc(M_WAITOK); bufdefragcnt = counter_u64_alloc(M_WAITOK); bufkvaspace = counter_u64_alloc(M_WAITOK); + TSEXIT(); } #ifdef INVARIANTS diff --git a/sys/vm/vm_init.c b/sys/vm/vm_init.c --- a/sys/vm/vm_init.c +++ b/sys/vm/vm_init.c @@ -156,6 +156,7 @@ vm_offset_t minaddr; vm_offset_t maxaddr; + TSENTER(); /* * Allocate space for system data structures. * The first available kernel virtual address is in "v". @@ -252,4 +253,5 @@ exec_map_entries * exec_map_entry_size + 64 * PAGE_SIZE, false); kmem_subinit(pipe_map, kernel_map, &minaddr, &maxaddr, maxpipekva, false); + TSEXIT(); } diff --git a/sys/vm/vm_kern.c b/sys/vm/vm_kern.c --- a/sys/vm/vm_kern.c +++ b/sys/vm/vm_kern.c @@ -451,8 +451,12 @@ void * kmem_malloc(vm_size_t size, int flags) { + void * p; - return (kmem_malloc_domainset(DOMAINSET_RR(), size, flags)); + TSENTER(); + p = kmem_malloc_domainset(DOMAINSET_RR(), size, flags); + TSEXIT(); + return (p); } void * @@ -731,17 +735,21 @@ vm_offset_t addr; int result; + TSENTER(); KASSERT((size % KVA_QUANTUM) == 0, ("kva_import: Size %jd is not a multiple of %d", (intmax_t)size, (int)KVA_QUANTUM)); addr = vm_map_min(kernel_map); result = vm_map_find(kernel_map, NULL, 0, &addr, size, 0, VMFS_SUPER_SPACE, VM_PROT_ALL, VM_PROT_ALL, MAP_NOFAULT); - if (result != KERN_SUCCESS) + if (result != KERN_SUCCESS) { + TSEXIT(); return (ENOMEM); + } *addrp = addr; + TSEXIT(); return (0); }