Lines Matching refs:pidData
77 static void *get_thread_state(void *tls_base, PidData *pidData)
82 bpf_probe_read_user(&key, sizeof(key), (void*)(long)pidData->tls_key_addr);
88 static __always_inline bool get_frame_data(void *frame_ptr, PidData *pidData,
94 frame_ptr + pidData->offsets.PyFrameObject_back);
97 frame_ptr + pidData->offsets.PyFrameObject_code);
104 frame->f_code + pidData->offsets.PyCodeObject_filename);
107 frame->f_code + pidData->offsets.PyCodeObject_name);
113 pidData->offsets.String_data);
118 pidData->offsets.String_data);
170 PidData *pidData;
180 PidData *pidData = ctx->pidData;
187 if (frame_ptr && get_frame_data(frame_ptr, pidData, frame, sym)) {
226 PidData* pidData = bpf_map_lookup_elem(&pidmap, &pid);
227 if (!pidData)
246 (void*)(long)pidData->current_state_addr);
251 void* thread_state = pidData->use_tls ? get_thread_state(tls_base, pidData)
255 if (pidData->use_tls) {
264 pidData->offsets.PyThreadState_thread);
270 if (event->pthread_match || !pidData->use_tls) {
279 pidData->offsets.PyThreadState_frame);
290 .pidData = pidData,
315 if (frame_ptr && get_frame_data(frame_ptr, pidData, &frame, &sym)) {