[BACK]Return to kern_ktrace.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / kern

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/kern/kern_ktrace.c between version 1.103 and 1.104

version 1.103, 2006/05/14 21:15:11 version 1.104, 2006/06/07 22:33:39
Line 233  ktraddentry(struct lwp *l, struct ktrace
Line 233  ktraddentry(struct lwp *l, struct ktrace
         struct proc *p = l->l_proc;          struct proc *p = l->l_proc;
         struct ktr_desc *ktd;          struct ktr_desc *ktd;
 #ifdef DEBUG  #ifdef DEBUG
         struct timeval t;          struct timeval t1, t2;
         int s;  
 #endif  #endif
   
         if (p->p_traceflag & KTRFAC_TRC_EMUL) {          if (p->p_traceflag & KTRFAC_TRC_EMUL) {
Line 282  ktraddentry(struct lwp *l, struct ktrace
Line 281  ktraddentry(struct lwp *l, struct ktrace
                         ktd->ktd_flags |= KTDF_WAIT;                          ktd->ktd_flags |= KTDF_WAIT;
                         ktd_wakeup(ktd);                          ktd_wakeup(ktd);
 #ifdef DEBUG  #ifdef DEBUG
                         s = splclock();                          getmicrouptime(&t1);
                         t = mono_time;  
                         splx(s);  
 #endif  #endif
                         if (ltsleep(&ktd->ktd_flags, PWAIT, "ktrsync",                          if (ltsleep(&ktd->ktd_flags, PWAIT, "ktrsync",
                             ktd_timeout * hz, &ktd->ktd_slock) != 0) {                              ktd_timeout * hz, &ktd->ktd_slock) != 0) {
Line 298  ktraddentry(struct lwp *l, struct ktrace
Line 295  ktraddentry(struct lwp *l, struct ktrace
                                 break;                                  break;
                         }                          }
 #ifdef DEBUG  #ifdef DEBUG
                         s = splclock();                          getmicrouptime(&t2);
                         timersub(&mono_time, &t, &t);                          timersub(&t2, &t1, &t2);
                         splx(s);                          if (t2.tv_sec > 0)
                         if (t.tv_sec > 0)  
                                 log(LOG_NOTICE,                                  log(LOG_NOTICE,
                                     "ktrace long wait: %ld.%06ld\n",                                      "ktrace long wait: %ld.%06ld\n",
                                     t.tv_sec, t.tv_usec);                                      t2.tv_sec, t2.tv_usec);
 #endif  #endif
                 } while (p->p_tracep == ktd &&                  } while (p->p_tracep == ktd &&
                     (ktd->ktd_flags & (KTDF_WAIT | KTDF_DONE)) == KTDF_WAIT);                      (ktd->ktd_flags & (KTDF_WAIT | KTDF_DONE)) == KTDF_WAIT);

Legend:
Removed from v.1.103  
changed lines
  Added in v.1.104

CVSweb <webmaster@jp.NetBSD.org>