Lines Matching defs:lkb

884 leaky_subr_dump(const leak_bufctl_t *lkb, int verbose)
893 uint8_t type = lkb->lkb_type;
905 switch (lkb->lkb_type) {
908 nm = (lkb->lkb_type == TYPE_MMAP) ? "MMAP" : "SBRK";
909 nm_lc = (lkb->lkb_type == TYPE_MMAP) ? "mmap(2)" : "sbrk(2)";
911 for (; lkb != NULL; lkb = lkb->lkb_next) {
913 mdb_printf("%-16d %7d %?p %s\n", lkb->lkb_data,
914 lkb->lkb_dups + 1, lkb->lkb_addr, nm);
917 nm_lc, lkb->lkb_addr,
918 lkb->lkb_addr + lkb->lkb_data,
919 lkb->lkb_data);
921 lk_bytes += lkb->lkb_data;
926 min = max = lkb->lkb_data;
928 for (cur = lkb; cur != NULL; cur = cur->lkb_next) {
947 leaky_subr_caller(lkb->lkb_stack, lkb->lkb_depth,
950 mdb_printf("%-16s %7d %?p %a\n", sz, lkb->lkb_dups + 1,
951 lkb->lkb_addr, caller);
966 if (mdb_call_dcmd("vmem_seg", lkb->lkb_addr,
969 lkb->lkb_addr);
983 if (mdb_vread(&cache, sizeof (cache), lkb->lkb_data) == -1) {
990 "buffer %p", lkb->lkb_data, lkb->lkb_addr);
994 lk_ttl += lkb->lkb_dups + 1;
995 lk_bytes += (lkb->lkb_dups + 1) * cache.cache_bufsize;
997 caller = (lkb->lkb_depth == 0) ? 0 : lkb->lkb_stack[0];
1006 mdb_printf("%0?p %7d %0?p %s\n", lkb->lkb_cid,
1007 lkb->lkb_dups + 1, lkb->lkb_addr, c);
1019 (caller == 0) ? "" : ", ", lkb->lkb_addr);
1031 if (mdb_vread(&cache, sizeof (cache), lkb->lkb_data) == -1) {
1038 "bufctl %p", lkb->lkb_data, lkb->lkb_addr);
1042 lk_ttl += lkb->lkb_dups + 1;
1043 lk_bytes += (lkb->lkb_dups + 1) * cache.cache_bufsize;
1046 leaky_subr_caller(lkb->lkb_stack, lkb->lkb_depth, c,
1049 mdb_printf("%0?p %7d %0?p %a\n", lkb->lkb_data,
1050 lkb->lkb_dups + 1, lkb->lkb_addr, caller);
1066 if (mdb_call_dcmd("bufctl", lkb->lkb_addr,
1069 lkb->lkb_addr);
1123 leaky_subr_invoke_callback(const leak_bufctl_t *lkb, mdb_walk_cb_t cb,
1130 switch (lkb->lkb_type) {
1132 if (mdb_vread(&vs, sizeof (vs), lkb->lkb_addr) == -1) {
1134 lkb->lkb_addr);
1137 return (cb(lkb->lkb_addr, &vs, cbdata));
1141 lkb->lkb_addr) == -1) {
1143 lkb->lkb_addr);
1146 return (cb(lkb->lkb_addr, bcp, cbdata));
1149 return (cb(lkb->lkb_addr, NULL, cbdata));