Lines Matching defs:req

169 static void ktr_submitrequest(struct thread *td, struct ktr_request *req);
171 static void ktr_freerequest(struct ktr_request *req);
172 static void ktr_freerequest_locked(struct ktr_request *req);
173 static void ktr_writerequest(struct thread *td, struct ktr_request *req);
219 struct ktr_request *req;
226 req = malloc(sizeof(struct ktr_request), M_KTRACE, M_WAITOK |
228 STAILQ_INSERT_HEAD(&ktr_free, req, ktr_list);
242 if (!req->newptr) {
244 return (SYSCTL_OUT(req, &oldsize, sizeof(u_int)));
247 error = SYSCTL_IN(req, &wantsize, sizeof(u_int));
255 error = SYSCTL_OUT(req, &oldsize, sizeof(u_int));
271 struct ktr_request *req;
282 req = STAILQ_FIRST(&ktr_free);
283 if (req == NULL)
287 free(req, M_KTRACE);
293 req = malloc(sizeof(struct ktr_request), M_KTRACE,
295 STAILQ_INSERT_HEAD(&ktr_new, req, ktr_list);
312 struct ktr_request *req;
321 req = STAILQ_FIRST(&ktr_free);
322 if (req != NULL) {
324 req->ktr_header.ktr_type = type;
326 req->ktr_header.ktr_type |= KTR_DROP;
330 nanotime(&req->ktr_header.ktr_time);
331 req->ktr_header.ktr_type |= KTR_VERSIONED;
332 req->ktr_header.ktr_pid = p->p_pid;
333 req->ktr_header.ktr_tid = td->td_tid;
334 req->ktr_header.ktr_cpu = PCPU_GET(cpuid);
335 req->ktr_header.ktr_version = KTR_VERSION1;
336 bcopy(td->td_name, req->ktr_header.ktr_comm,
337 sizeof(req->ktr_header.ktr_comm));
338 req->ktr_buffer = NULL;
339 req->ktr_header.ktr_len = 0;
348 return (req);
355 struct ktr_request *req;
358 req = ktr_getrequest_entered(td, type);
359 if (req == NULL)
362 return (req);
372 ktr_enqueuerequest(struct thread *td, struct ktr_request *req)
376 STAILQ_INSERT_TAIL(&td->td_proc->p_ktr, req, ktr_list);
418 ktr_submitrequest(struct thread *td, struct ktr_request *req)
425 ktr_writerequest(td, req);
426 ktr_freerequest(req);
432 ktr_freerequest(struct ktr_request *req)
436 ktr_freerequest_locked(req);
441 ktr_freerequest_locked(struct ktr_request *req)
445 if (req->ktr_buffer != NULL)
446 free(req->ktr_buffer, M_KTRACE);
447 STAILQ_INSERT_HEAD(&ktr_free, req, ktr_list);
501 struct ktr_request *req;
508 while ((req = STAILQ_FIRST(&p->p_ktr)) != NULL) {
510 ktr_freerequest_locked(req);
535 struct ktr_request *req;
548 req = ktr_getrequest(KTR_SYSCALL);
549 if (req == NULL) {
554 ktp = &req->ktr_data.ktr_syscall;
558 req->ktr_header.ktr_len = buflen;
559 req->ktr_buffer = buf;
561 ktr_submitrequest(curthread, req);
567 struct ktr_request *req;
570 if ((req = ktr_getrequest(type)) == NULL)
574 req->ktr_header.ktr_len = len;
575 req->ktr_buffer = buf;
576 ktr_submitrequest(curthread, req);
582 struct ktr_request *req;
588 req = ktr_getrequest(KTR_SYSRET);
589 if (req == NULL)
591 ktp = &req->ktr_data.ktr_sysret;
595 ktr_submitrequest(curthread, req);
627 struct ktr_request *req;
636 req = ktr_getrequest_entered(td, KTR_PROCDTOR);
637 if (req != NULL)
638 ktr_enqueuerequest(td, req);
655 struct ktr_request *req;
660 req = ktr_getrequest_entered(td2, KTR_PROCCTOR);
661 if (req == NULL)
663 ktp = &req->ktr_data.ktr_proc_ctor;
665 ktr_enqueuerequest(td2, req);
725 struct ktr_request *req;
734 req = ktr_getrequest(KTR_NAMEI);
735 if (req == NULL) {
741 req->ktr_header.ktr_len = namelen;
742 req->ktr_buffer = buf;
744 ktr_submitrequest(curthread, req);
750 struct ktr_request *req;
769 req = ktr_getrequest(KTR_SYSCTL);
770 if (req == NULL) {
774 req->ktr_header.ktr_len = mibnamelen;
775 req->ktr_buffer = mibname;
776 ktr_submitrequest(curthread, req);
782 struct ktr_request *req;
801 req = ktr_getrequest(KTR_GENIO);
802 if (req == NULL) {
806 ktg = &req->ktr_data.ktr_genio;
809 req->ktr_header.ktr_len = datalen;
810 req->ktr_buffer = buf;
811 ktr_submitrequest(curthread, req);
818 struct ktr_request *req;
821 req = ktr_getrequest(KTR_PSIG);
822 if (req == NULL)
824 kp = &req->ktr_data.ktr_psig;
829 ktr_enqueuerequest(td, req);
837 struct ktr_request *req;
843 req = ktr_getrequest(KTR_CSW);
844 if (req == NULL)
846 kc = &req->ktr_data.ktr_csw;
853 ktr_enqueuerequest(td, req);
860 struct ktr_request *req;
874 if ((req = ktr_getrequest(KTR_STRUCT)) == NULL) {
878 req->ktr_buffer = buf;
879 req->ktr_header.ktr_len = buflen;
880 ktr_submitrequest(curthread, req);
895 struct ktr_request *req;
931 if ((req = ktr_getrequest(KTR_STRUCT_ARRAY)) == NULL) {
935 ksa = &req->ktr_data.ktr_struct_array;
937 req->ktr_buffer = buf;
938 req->ktr_header.ktr_len = buflen;
939 ktr_submitrequest(curthread, req);
946 struct ktr_request *req;
956 req = ktr_getrequest(KTR_CAPFAIL);
957 if (req == NULL)
959 kcf = &req->ktr_data.ktr_cap_fail;
994 ktr_enqueuerequest(td, req);
1002 struct ktr_request *req;
1008 req = ktr_getrequest(KTR_FAULT);
1009 if (req == NULL)
1011 kf = &req->ktr_data.ktr_fault;
1014 ktr_enqueuerequest(td, req);
1022 struct ktr_request *req;
1028 req = ktr_getrequest(KTR_FAULTEND);
1029 if (req == NULL)
1031 kf = &req->ktr_data.ktr_faultend;
1033 ktr_enqueuerequest(td, req);
1189 struct ktr_request *req;
1203 req = ktr_getrequest(KTR_USER);
1204 if (req == NULL) {
1208 req->ktr_buffer = cp;
1209 req->ktr_header.ktr_len = uap->len;
1210 ktr_submitrequest(td, req);
1312 ktr_writerequest(struct thread *td, struct ktr_request *req)
1352 kth = &req->ktr_header;
1367 aiov[1].iov_base = (caddr_t)&req->ktr_data;
1374 KASSERT(req->ktr_buffer != NULL, ("ktrace: nothing to write"));
1375 aiov[auio.uio_iovcnt].iov_base = req->ktr_buffer;