Print this page
INTRO-118 enabling USDT probes in zones should be more scalable
        
*** 23,33 ****
  /*
   * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
   * Use is subject to license terms.
   */
  
! #pragma ident   "%Z%%M% %I%     %E% SMI"
  
  #include <dt_impl.h>
  #include <stddef.h>
  #include <errno.h>
  #include <assert.h>
--- 23,35 ----
  /*
   * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
   * Use is subject to license terms.
   */
  
! /*
!  * Copyright (c) 2011, Joyent, Inc. All rights reserved.
!  */
  
  #include <dt_impl.h>
  #include <stddef.h>
  #include <errno.h>
  #include <assert.h>
*** 162,174 ****
  }
  
  int
  dtrace_go(dtrace_hdl_t *dtp)
  {
-         void *dof;
-         int err;
- 
          if (dtp->dt_active)
                  return (dt_set_errno(dtp, EINVAL));
  
          /*
           * If a dtrace:::ERROR program and callback are registered, enable the
--- 164,173 ----
*** 180,198 ****
          if (dtp->dt_errprog != NULL &&
              dtrace_program_exec(dtp, dtp->dt_errprog, NULL) == -1 && (
              dtp->dt_errno != ENOTTY || dtp->dt_vector == NULL))
                  return (-1); /* dt_errno has been set for us */
  
-         if ((dof = dtrace_getopt_dof(dtp)) == NULL)
-                 return (-1); /* dt_errno has been set for us */
- 
-         err = dt_ioctl(dtp, DTRACEIOC_ENABLE, dof);
-         dtrace_dof_destroy(dtp, dof);
- 
-         if (err == -1 && (errno != ENOTTY || dtp->dt_vector == NULL))
-                 return (dt_set_errno(dtp, errno));
- 
          if (dt_ioctl(dtp, DTRACEIOC_GO, &dtp->dt_beganon) == -1) {
                  if (errno == EACCES)
                          return (dt_set_errno(dtp, EDT_DESTRUCTIVE));
  
                  if (errno == EALREADY)
--- 179,188 ----