return LTTNG_IOCTL_NO_CHECK(fd, LTTNG_KERNEL_SESSION_LIST_TRACKER_PIDS);
}
+static enum lttng_kernel_tracker_type get_kernel_tracker_type(
+ enum lttng_tracker_type type)
+{
+ switch (type) {
+ case LTTNG_TRACKER_PID:
+ return LTTNG_KERNEL_TRACKER_PID;
+ case LTTNG_TRACKER_VPID:
+ return LTTNG_KERNEL_TRACKER_VPID;
+ case LTTNG_TRACKER_UID:
+ return LTTNG_KERNEL_TRACKER_UID;
+ case LTTNG_TRACKER_VUID:
+ return LTTNG_KERNEL_TRACKER_VUID;
+ case LTTNG_TRACKER_GID:
+ return LTTNG_KERNEL_TRACKER_GID;
+ case LTTNG_TRACKER_VGID:
+ return LTTNG_KERNEL_TRACKER_VGID;
+ default:
+ return LTTNG_KERNEL_TRACKER_UNKNOWN;
+ }
+}
+
+int kernctl_track_id(int fd, enum lttng_tracker_type tracker_type, int id)
+{
+ struct lttng_kernel_tracker_args args;
+
+ args.id = id;
+ args.type = get_kernel_tracker_type(tracker_type);
+ if (args.type == LTTNG_KERNEL_TRACKER_UNKNOWN) {
+ errno = EINVAL;
+ return -1;
+ }
+ return LTTNG_IOCTL_CHECK(fd, LTTNG_KERNEL_SESSION_TRACK_ID, &args);
+}
+
+int kernctl_untrack_id(int fd, enum lttng_tracker_type tracker_type, int id)
+{
+ struct lttng_kernel_tracker_args args;
+
+ args.id = id;
+ args.type = get_kernel_tracker_type(tracker_type);
+ if (args.type == LTTNG_KERNEL_TRACKER_UNKNOWN) {
+ errno = EINVAL;
+ return -1;
+ }
+ return LTTNG_IOCTL_CHECK(fd, LTTNG_KERNEL_SESSION_UNTRACK_ID, &args);
+}
+
+int kernctl_list_tracker_ids(int fd, enum lttng_tracker_type tracker_type)
+{
+ struct lttng_kernel_tracker_args args;
+
+ args.id = -1;
+ args.type = get_kernel_tracker_type(tracker_type);
+ if (args.type == LTTNG_KERNEL_TRACKER_UNKNOWN) {
+ errno = EINVAL;
+ return -1;
+ }
+ return LTTNG_IOCTL_NO_CHECK(
+ fd, LTTNG_KERNEL_SESSION_LIST_TRACKER_IDS, &args);
+}
+
int kernctl_session_regenerate_metadata(int fd)
{
return LTTNG_IOCTL_CHECK(fd, LTTNG_KERNEL_SESSION_METADATA_REGEN);
return LTTNG_IOCTL_CHECK(fd, RING_BUFFER_FLUSH_EMPTY);
}
+int kernctl_buffer_clear(int fd)
+{
+ return LTTNG_IOCTL_CHECK(fd, RING_BUFFER_CLEAR);
+}
+
/* returns the version of the metadata. */
int kernctl_get_metadata_version(int fd, uint64_t *version)
{