Lines Matching refs:kwp
69 ksyms_emit(ksyms_walkinfo_t *kwp, void *src, size_t size, int action) in ksyms_emit() argument
71 if (kwp->kw_actions & action) { in ksyms_emit()
72 if ((kwp->kw_resid -= size) >= 0) in ksyms_emit()
73 kwp->kw_emit(src, kwp->kw_target, size); in ksyms_emit()
74 kwp->kw_totalsize += size; in ksyms_emit()
76 kwp->kw_size[action] += size; in ksyms_emit()
83 ksyms_walkinfo_t *kwp = arg; in ksyms_walk_one() local
95 tmp.st_name = kwp->kw_size[KW_STRINGS]; in ksyms_walk_one()
97 ksyms_emit(kwp, &tmp, sizeof (Sym), in ksyms_walk_one()
100 ksyms_emit(kwp, name, strlen(name) + 1, KW_STRINGS); in ksyms_walk_one()
105 ksyms_walk(ksyms_walkinfo_t *kwp, void *target, ssize_t resid, in ksyms_walk() argument
110 bzero(kwp, sizeof (ksyms_walkinfo_t)); in ksyms_walk()
111 kwp->kw_emit = emit; in ksyms_walk()
112 kwp->kw_target = target; in ksyms_walk()
113 kwp->kw_resid = resid; in ksyms_walk()
114 kwp->kw_actions = actions; in ksyms_walk()
116 ksyms_emit(kwp, src, sizeof (ksyms_header_t), KW_HEADER); in ksyms_walk()
122 ksyms_emit(kwp, &tmp, sizeof (Sym), KW_LOCALS); in ksyms_walk()
123 ksyms_emit(kwp, &tmp, 1, KW_STRINGS); in ksyms_walk()
124 vmem_walk(ksyms_arena, VMEM_ALLOC, ksyms_walk_one, kwp); in ksyms_walk()
125 return (kwp->kw_totalsize); in ksyms_walk()