Lines Matching refs:bcp
1286 kmem_bufctl_t *bcp = NULL; in kmem_error() local
1320 for (bcp = *KMEM_HASH(cp, buf); bcp; bcp = bcp->bc_next) in kmem_error()
1321 if (bcp->bc_addr == buf) in kmem_error()
1324 if (bcp == NULL && btp != NULL) in kmem_error()
1325 bcp = btp->bt_bufctl; in kmem_error()
1326 if (kmem_findslab(cp->cache_bufctl_cache, bcp) == in kmem_error()
1327 NULL || P2PHASE((uintptr_t)bcp, KMEM_ALIGN) || in kmem_error()
1328 bcp->bc_addr != buf) { in kmem_error()
1330 bcp = NULL; in kmem_error()
1341 kmem_panic_info.kmp_bufctl = bcp; in kmem_error()
1400 bufarg, (void *)bcp, cparg->cache_name); in kmem_error()
1402 if (bcp != NULL && (cp->cache_flags & KMF_AUDIT) && in kmem_error()
1406 kmem_bufctl_audit_t *bcap = (kmem_bufctl_audit_t *)bcp; in kmem_error()
1500 #define KMEM_AUDIT(lp, cp, bcp) \ argument
1502 kmem_bufctl_audit_t *_bcp = (kmem_bufctl_audit_t *)(bcp); \
1534 kmem_bufctl_t *bcp; in kmem_slab_create() local
1582 bcp = kmem_cache_alloc(cp->cache_bufctl_cache, kmflag); in kmem_slab_create()
1583 if (bcp == NULL) in kmem_slab_create()
1587 (kmem_bufctl_audit_t *)bcp; in kmem_slab_create()
1591 bcp->bc_addr = buf; in kmem_slab_create()
1592 bcp->bc_slab = sp; in kmem_slab_create()
1594 bcp = KMEM_BUFCTL(cp, buf); in kmem_slab_create()
1599 btp->bt_bufctl = bcp; in kmem_slab_create()
1600 btp->bt_bxstat = (intptr_t)bcp ^ KMEM_BUFTAG_FREE; in kmem_slab_create()
1606 bcp->bc_next = sp->slab_head; in kmem_slab_create()
1607 sp->slab_head = bcp; in kmem_slab_create()
1617 while ((bcp = sp->slab_head) != NULL) { in kmem_slab_create()
1618 sp->slab_head = bcp->bc_next; in kmem_slab_create()
1619 kmem_cache_free(cp->cache_bufctl_cache, bcp); in kmem_slab_create()
1648 kmem_bufctl_t *bcp; in kmem_slab_destroy() local
1649 while ((bcp = sp->slab_head) != NULL) { in kmem_slab_destroy()
1650 sp->slab_head = bcp->bc_next; in kmem_slab_destroy()
1651 kmem_cache_free(cp->cache_bufctl_cache, bcp); in kmem_slab_destroy()
1661 kmem_bufctl_t *bcp, **hash_bucket; in kmem_slab_alloc_impl() local
1679 bcp = sp->slab_head; in kmem_slab_alloc_impl()
1680 sp->slab_head = bcp->bc_next; in kmem_slab_alloc_impl()
1686 buf = bcp->bc_addr; in kmem_slab_alloc_impl()
1688 bcp->bc_next = *hash_bucket; in kmem_slab_alloc_impl()
1689 *hash_bucket = bcp; in kmem_slab_alloc_impl()
1691 KMEM_AUDIT(kmem_transaction_log, cp, bcp); in kmem_slab_alloc_impl()
1694 buf = KMEM_BUF(cp, bcp); in kmem_slab_alloc_impl()
1807 kmem_bufctl_t *bcp, **prev_bcpp; in kmem_slab_free() local
1819 while ((bcp = *prev_bcpp) != NULL) { in kmem_slab_free()
1820 if (bcp->bc_addr == buf) { in kmem_slab_free()
1821 *prev_bcpp = bcp->bc_next; in kmem_slab_free()
1822 sp = bcp->bc_slab; in kmem_slab_free()
1826 prev_bcpp = &bcp->bc_next; in kmem_slab_free()
1829 bcp = KMEM_BUFCTL(cp, buf); in kmem_slab_free()
1833 if (bcp == NULL || sp->slab_cache != cp || !KMEM_SLAB_MEMBER(sp, buf)) { in kmem_slab_free()
1852 ((kmem_bufctl_audit_t *)bcp)->bc_contents = in kmem_slab_free()
1855 KMEM_AUDIT(kmem_transaction_log, cp, bcp); in kmem_slab_free()
1858 bcp->bc_next = sp->slab_head; in kmem_slab_free()
1859 sp->slab_head = bcp; in kmem_slab_free()
1916 if (bcp->bc_next == NULL) { in kmem_slab_free()
1950 kmem_bufctl_audit_t *bcp = (kmem_bufctl_audit_t *)btp->bt_bufctl; in kmem_cache_alloc_debug() local
1953 if (btp->bt_bxstat != ((intptr_t)bcp ^ KMEM_BUFTAG_FREE)) { in kmem_cache_alloc_debug()
1958 btp->bt_bxstat = (intptr_t)bcp ^ KMEM_BUFTAG_ALLOC; in kmem_cache_alloc_debug()
1960 if ((cp->cache_flags & KMF_HASH) && bcp->bc_addr != buf) { in kmem_cache_alloc_debug()
2000 btp->bt_bxstat = (intptr_t)bcp ^ KMEM_BUFTAG_FREE; in kmem_cache_alloc_debug()
2008 KMEM_AUDIT(kmem_transaction_log, cp, bcp); in kmem_cache_alloc_debug()
2023 kmem_bufctl_audit_t *bcp = (kmem_bufctl_audit_t *)btp->bt_bufctl; in kmem_cache_free_debug() local
2026 if (btp->bt_bxstat != ((intptr_t)bcp ^ KMEM_BUFTAG_ALLOC)) { in kmem_cache_free_debug()
2027 if (btp->bt_bxstat == ((intptr_t)bcp ^ KMEM_BUFTAG_FREE)) { in kmem_cache_free_debug()
2039 btp->bt_bxstat = (intptr_t)bcp ^ KMEM_BUFTAG_FREE; in kmem_cache_free_debug()
2041 if ((cp->cache_flags & KMF_HASH) && bcp->bc_addr != buf) { in kmem_cache_free_debug()
2053 bcp->bc_contents = kmem_log_enter(kmem_content_log, in kmem_cache_free_debug()
2055 KMEM_AUDIT(kmem_transaction_log, cp, bcp); in kmem_cache_free_debug()
3271 kmem_bufctl_t **old_table, **new_table, *bcp; in kmem_hash_rescale() local
3299 bcp = old_table[h]; in kmem_hash_rescale()
3300 while (bcp != NULL) { in kmem_hash_rescale()
3301 void *addr = bcp->bc_addr; in kmem_hash_rescale()
3302 kmem_bufctl_t *next_bcp = bcp->bc_next; in kmem_hash_rescale()
3304 bcp->bc_next = *hash_bucket; in kmem_hash_rescale()
3305 *hash_bucket = bcp; in kmem_hash_rescale()
3306 bcp = next_bcp; in kmem_hash_rescale()
4526 kmem_bufctl_t *bcp, *bufbcp; in kmem_slab_allocated() local
4532 for (bcp = *KMEM_HASH(cp, buf); in kmem_slab_allocated()
4533 (bcp != NULL) && (bcp->bc_addr != buf); in kmem_slab_allocated()
4534 bcp = bcp->bc_next) { in kmem_slab_allocated()
4537 ASSERT(sp != NULL && bcp != NULL ? sp == bcp->bc_slab : 1); in kmem_slab_allocated()
4538 return (bcp == NULL ? NULL : bcp->bc_slab); in kmem_slab_allocated()
4545 for (bcp = sp->slab_head; in kmem_slab_allocated()
4546 (bcp != NULL) && (bcp != bufbcp); in kmem_slab_allocated()
4547 bcp = bcp->bc_next) { in kmem_slab_allocated()
4550 return (bcp == NULL ? sp : NULL); in kmem_slab_allocated()