X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=include%2Flttng%2Fust-abi.h;h=470645e6cf9e4ff58f37524febf4ebd26f088893;hb=d9a9a33b2cb4e152573fcd0da3eb82ac56a4bb81;hp=8b8197731b10714543ca2948e386187f2bf36e70;hpb=f56cd1d5b4b28510fcbfc08ec3ba86ffdb62cb52;p=lttng-ust.git diff --git a/include/lttng/ust-abi.h b/include/lttng/ust-abi.h index 8b819773..470645e6 100644 --- a/include/lttng/ust-abi.h +++ b/include/lttng/ust-abi.h @@ -49,20 +49,9 @@ struct lttng_ust_channel { unsigned int switch_timer_interval; /* usecs */ unsigned int read_timer_interval; /* usecs */ enum lttng_ust_output output; /* output mode */ - /* The following fields are used internally within UST. */ - int shm_fd; - int wait_fd; - uint64_t memory_map_size; }; -/* - * This structure is only used internally within UST. It is not per-se - * part of the communication between sessiond and UST. - */ struct lttng_ust_stream { - int shm_fd; - int wait_fd; - uint64_t memory_map_size; }; struct lttng_ust_event { @@ -111,6 +100,14 @@ struct lttng_ust_object_data { uint64_t memory_map_size; }; +enum lttng_ust_calibrate_type { + LTTNG_UST_CALIBRATE_TRACEPOINT, +}; + +struct lttng_ust_calibrate { + enum lttng_ust_calibrate_type type; /* type (input) */ +}; + #define _UST_CMD(minor) (minor) #define _UST_CMDR(minor, type) (minor) #define _UST_CMDW(minor, type) (minor) @@ -158,8 +155,22 @@ struct lttng_ust_object_data { struct lttng_ust_obj; +union ust_args { + struct { + int *shm_fd; + int *wait_fd; + uint64_t *memory_map_size; + } channel; + struct { + int *shm_fd; + int *wait_fd; + uint64_t *memory_map_size; + } stream; +}; + struct lttng_ust_objd_ops { - long (*cmd)(int objd, unsigned int cmd, unsigned long arg); + long (*cmd)(int objd, unsigned int cmd, unsigned long arg, + union ust_args *args); int (*release)(int objd); };