diff options
Diffstat (limited to 'cddl/contrib/opensolaris/lib/libdtrace/common/dt_work.c')
-rw-r--r-- | cddl/contrib/opensolaris/lib/libdtrace/common/dt_work.c | 23 |
1 files changed, 1 insertions, 22 deletions
diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_work.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_work.c index 68e64bb..97a7f62 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_work.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_work.c @@ -82,7 +82,6 @@ dtrace_sleep(dtrace_hdl_t *dtp) return; /* sleep duration has already past */ } -#if defined(sun) tv.tv_sec = (earliest - now) / NANOSEC; tv.tv_nsec = (earliest - now) % NANOSEC; @@ -92,23 +91,6 @@ dtrace_sleep(dtrace_hdl_t *dtp) * awaken, iterate over any pending notifications and process them. */ (void) pthread_cond_reltimedwait_np(&dph->dph_cv, &dph->dph_lock, &tv); -#else - earliest -= now; - clock_gettime(CLOCK_REALTIME,&tv); - tv.tv_sec += earliest / NANOSEC; - tv.tv_nsec += earliest % NANOSEC; - while (tv.tv_nsec > NANOSEC) { - tv.tv_sec += 1; - tv.tv_nsec -= NANOSEC; - } - - /* - * Wait for either 'tv' nanoseconds to pass or to receive notification - * that a process is in an interesting state. Regardless of why we - * awaken, iterate over any pending notifications and process them. - */ - (void) pthread_cond_timedwait(&dph->dph_cv, &dph->dph_lock, &tv); -#endif while ((dprn = dph->dph_notify) != NULL) { if (dtp->dt_prochdlr != NULL) { @@ -182,7 +164,6 @@ dtrace_status(dtrace_hdl_t *dtp) int dtrace_go(dtrace_hdl_t *dtp) { - dtrace_enable_io_t args; void *dof; int err; @@ -204,9 +185,7 @@ dtrace_go(dtrace_hdl_t *dtp) if ((dof = dtrace_getopt_dof(dtp)) == NULL) return (-1); /* dt_errno has been set for us */ - args.dof = dof; - args.n_matched = 0; - err = dt_ioctl(dtp, DTRACEIOC_ENABLE, &args); + err = dt_ioctl(dtp, DTRACEIOC_ENABLE, dof); dtrace_dof_destroy(dtp, dof); if (err == -1 && (errno != ENOTTY || dtp->dt_vector == NULL)) |