Index: kern/kern_ktrace.c =================================================================== RCS file: /home/dcvs/src/sys/kern/kern_ktrace.c,v retrieving revision 1.28 diff -u -r1.28 kern_ktrace.c --- kern/kern_ktrace.c 12 Aug 2006 00:26:20 -0000 1.28 +++ kern/kern_ktrace.c 4 May 2007 18:28:10 -0000 @@ -66,12 +66,14 @@ { struct ktr_header *kth; struct proc *p = curproc; /* XXX */ + struct lwp *lp = curthread->td_lwp; MALLOC(kth, struct ktr_header *, sizeof (struct ktr_header), M_KTRACE, M_WAITOK); kth->ktr_type = type; microtime(&kth->ktr_time); kth->ktr_pid = p->p_pid; + kth->ktr_tid = lp->lwp_tid; bcopy(p->p_comm, kth->ktr_comm, MAXCOMLEN + 1); return (kth); } Index: sys/ktrace.h =================================================================== RCS file: /home/dcvs/src/sys/sys/ktrace.h,v retrieving revision 1.8 diff -u -r1.8 ktrace.h --- sys/ktrace.h 21 May 2006 03:43:47 -0000 1.8 +++ sys/ktrace.h 4 May 2007 18:56:49 -0000 @@ -80,6 +80,7 @@ int ktr_len; /* length of buf */ short ktr_type; /* trace record type */ pid_t ktr_pid; /* process id */ + lwpid_t ktr_tid; /* lwp id */ char ktr_comm[MAXCOMLEN+1]; /* command name */ struct timeval ktr_time; /* timestamp */ caddr_t ktr_buf;