Declare struct lttng_ust_calibrate
[lttng-ust.git] / include / lttng / ust-abi.h
index 8b8197731b10714543ca2948e386187f2bf36e70..470645e6cf9e4ff58f37524febf4ebd26f088893 100644 (file)
@@ -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);
 };
 
This page took 0.023151 seconds and 4 git commands to generate.