Lines Matching refs:tbp
44 fmd_tracebuf_t *tbp = fmd_zalloc(sizeof (fmd_tracebuf_t), FMD_SLEEP); in fmd_trace_create() local
47 (void) fmd_conf_getprop(fmd.d_conf, "trace.frames", &tbp->tb_frames); in fmd_trace_create()
48 (void) fmd_conf_getprop(fmd.d_conf, "trace.recs", &tbp->tb_recs); in fmd_trace_create()
67 tbp->tb_frames = (tbp->tb_frames & ~1UL) + 1; in fmd_trace_create()
69 tbp->tb_frames = P2ROUNDUP(tbp->tb_frames, 2); in fmd_trace_create()
71 tbp->tb_size = sizeof (fmd_tracerec_t) + in fmd_trace_create()
72 sizeof (uintptr_t) * (MAX(tbp->tb_frames, 1) - 1); in fmd_trace_create()
74 bufsize = tbp->tb_size * tbp->tb_recs; in fmd_trace_create()
76 tbp->tb_buf = fmd_zalloc(bufsize, FMD_SLEEP); in fmd_trace_create()
77 tbp->tb_end = (void *)((uintptr_t)tbp->tb_buf + bufsize - tbp->tb_size); in fmd_trace_create()
78 tbp->tb_ptr = tbp->tb_buf; in fmd_trace_create()
80 return (tbp); in fmd_trace_create()
84 fmd_trace_destroy(fmd_tracebuf_t *tbp) in fmd_trace_destroy() argument
86 fmd_free(tbp->tb_buf, tbp->tb_size * tbp->tb_recs); in fmd_trace_destroy()
87 fmd_free(tbp, sizeof (fmd_tracebuf_t)); in fmd_trace_destroy()
104 fmd_trace_none(fmd_tracebuf_t *tbp, uint_t tag, const char *format, va_list ap) in fmd_trace_none() argument
110 fmd_trace_lite(fmd_tracebuf_t *tbp, uint_t tag, const char *format, va_list ap) in fmd_trace_lite() argument
113 fmd_tracerec_t *trp = tbp->tb_ptr; in fmd_trace_lite()
116 if (tbp->tb_depth++ != 0) { in fmd_trace_lite()
117 tbp->tb_depth--; in fmd_trace_lite()
132 if (tbp->tb_ptr != tbp->tb_end) in fmd_trace_lite()
133 tbp->tb_ptr = (void *)((uintptr_t)tbp->tb_ptr + tbp->tb_size); in fmd_trace_lite()
135 tbp->tb_ptr = tbp->tb_buf; in fmd_trace_lite()
137 tbp->tb_depth--; in fmd_trace_lite()
142 fmd_trace_full(fmd_tracebuf_t *tbp, uint_t tag, const char *format, va_list ap) in fmd_trace_full() argument
145 fmd_tracerec_t *trp = tbp->tb_ptr; in fmd_trace_full()
149 if (tbp->tb_depth++ != 0) { in fmd_trace_full()
150 tbp->tb_depth--; in fmd_trace_full()
156 trp->tr_tag = tbp->tb_frames; /* for use by fmd_trace_frame() */ in fmd_trace_full()
173 if (tbp->tb_ptr != tbp->tb_end) in fmd_trace_full()
174 tbp->tb_ptr = (void *)((uintptr_t)tbp->tb_ptr + tbp->tb_size); in fmd_trace_full()
176 tbp->tb_ptr = tbp->tb_buf; in fmd_trace_full()
178 tbp->tb_depth--; in fmd_trace_full()