513 EDT_DROPABORT, /* abort due to drop */
514 EDT_DIRABORT, /* abort explicitly directed */
515 EDT_BADRVAL, /* invalid return value from callback */
516 EDT_BADNORMAL, /* invalid normalization */
517 EDT_BUFTOOSMALL, /* enabling exceeds size of buffer */
518 EDT_BADTRUNC, /* invalid truncation */
519 EDT_BUSY, /* device busy (active kernel debugger) */
520 EDT_ACCESS, /* insufficient privileges to use DTrace */
521 EDT_NOENT, /* dtrace device not available */
522 EDT_BRICKED, /* abort due to systemic unresponsiveness */
523 EDT_HARDWIRE, /* failed to load hard-wired definitions */
524 EDT_ELFVERSION, /* libelf is out-of-date w.r.t libdtrace */
525 EDT_NOBUFFERED, /* attempt to buffer output without handler */
526 EDT_UNSTABLE, /* description matched unstable set of probes */
527 EDT_BADSETOPT, /* invalid setopt library action */
528 EDT_BADSTACKPC, /* invalid stack program counter size */
529 EDT_BADAGGVAR, /* invalid aggregation variable identifier */
530 EDT_OVERSION, /* client is requesting deprecated version */
531 EDT_ENABLING_ERR, /* failed to enable probe */
532 EDT_NOPROBES, /* no probes sites for declared provider */
533 EDT_CANTLOAD /* failed to load a module */
534 };
535
536 /*
537 * Interfaces for parsing and comparing DTrace attribute tuples, which describe
538 * stability and architectural binding information. The dtrace_attribute_t
539 * structure and associated constant definitions are found in <sys/dtrace.h>.
540 */
541 extern dtrace_attribute_t dt_attr_min(dtrace_attribute_t, dtrace_attribute_t);
542 extern dtrace_attribute_t dt_attr_max(dtrace_attribute_t, dtrace_attribute_t);
543 extern char *dt_attr_str(dtrace_attribute_t, char *, size_t);
544 extern int dt_attr_cmp(dtrace_attribute_t, dtrace_attribute_t);
545
546 /*
547 * Interfaces for parsing and handling DTrace version strings. Version binding
548 * is a feature of the D compiler that is handled completely independently of
549 * the DTrace kernel infrastructure, so the definitions are here in libdtrace.
550 * Version strings are compiled into an encoded uint32_t which can be compared
551 * using C comparison operators. Version definitions are found in dt_open.c.
552 */
553 #define DT_VERSION_STRMAX 16 /* enough for "255.4095.4095\0" */
|
513 EDT_DROPABORT, /* abort due to drop */
514 EDT_DIRABORT, /* abort explicitly directed */
515 EDT_BADRVAL, /* invalid return value from callback */
516 EDT_BADNORMAL, /* invalid normalization */
517 EDT_BUFTOOSMALL, /* enabling exceeds size of buffer */
518 EDT_BADTRUNC, /* invalid truncation */
519 EDT_BUSY, /* device busy (active kernel debugger) */
520 EDT_ACCESS, /* insufficient privileges to use DTrace */
521 EDT_NOENT, /* dtrace device not available */
522 EDT_BRICKED, /* abort due to systemic unresponsiveness */
523 EDT_HARDWIRE, /* failed to load hard-wired definitions */
524 EDT_ELFVERSION, /* libelf is out-of-date w.r.t libdtrace */
525 EDT_NOBUFFERED, /* attempt to buffer output without handler */
526 EDT_UNSTABLE, /* description matched unstable set of probes */
527 EDT_BADSETOPT, /* invalid setopt library action */
528 EDT_BADSTACKPC, /* invalid stack program counter size */
529 EDT_BADAGGVAR, /* invalid aggregation variable identifier */
530 EDT_OVERSION, /* client is requesting deprecated version */
531 EDT_ENABLING_ERR, /* failed to enable probe */
532 EDT_NOPROBES, /* no probes sites for declared provider */
533 EDT_CANTLOAD, /* failed to load a module */
534 EDT_BADCTF /* module contains invalid CTF */
535 };
536
537 /*
538 * Interfaces for parsing and comparing DTrace attribute tuples, which describe
539 * stability and architectural binding information. The dtrace_attribute_t
540 * structure and associated constant definitions are found in <sys/dtrace.h>.
541 */
542 extern dtrace_attribute_t dt_attr_min(dtrace_attribute_t, dtrace_attribute_t);
543 extern dtrace_attribute_t dt_attr_max(dtrace_attribute_t, dtrace_attribute_t);
544 extern char *dt_attr_str(dtrace_attribute_t, char *, size_t);
545 extern int dt_attr_cmp(dtrace_attribute_t, dtrace_attribute_t);
546
547 /*
548 * Interfaces for parsing and handling DTrace version strings. Version binding
549 * is a feature of the D compiler that is handled completely independently of
550 * the DTrace kernel infrastructure, so the definitions are here in libdtrace.
551 * Version strings are compiled into an encoded uint32_t which can be compared
552 * using C comparison operators. Version definitions are found in dt_open.c.
553 */
554 #define DT_VERSION_STRMAX 16 /* enough for "255.4095.4095\0" */
|