X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fkernel-ctl%2Fkernel-ctl.c;h=1ddf4e81dcc27931071c3d1f25fd00fbe4e719bf;hb=4857416a2568a4fa1bebc93a68ff3b156f731266;hp=28ed06cbdaa50b5494c698b296e1bc576cdcfd6c;hpb=00a620843422e5c972aee0ada2181b811fc81b92;p=lttng-tools.git diff --git a/src/common/kernel-ctl/kernel-ctl.c b/src/common/kernel-ctl/kernel-ctl.c index 28ed06cbd..1ddf4e81d 100644 --- a/src/common/kernel-ctl/kernel-ctl.c +++ b/src/common/kernel-ctl/kernel-ctl.c @@ -16,7 +16,6 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#define _GNU_SOURCE #define _LGPL_SOURCE #define __USE_LINUX_IOCTL_DEFS #include @@ -112,6 +111,7 @@ int kernctl_create_channel(int fd, struct lttng_channel_attr *chops) { struct lttng_kernel_channel channel; + memset(&channel, 0, sizeof(channel)); if (lttng_kernel_use_old_abi) { struct lttng_kernel_old_channel old_channel; @@ -209,6 +209,11 @@ int kernctl_list_tracker_pids(int fd) return ioctl(fd, LTTNG_KERNEL_SESSION_LIST_TRACKER_PIDS); } +int kernctl_session_metadata_regenerate(int fd) +{ + return ioctl(fd, LTTNG_KERNEL_SESSION_METADATA_REGEN); +} + int kernctl_create_stream(int fd) { return compat_ioctl_no_arg(fd, LTTNG_KERNEL_OLD_STREAM, @@ -406,6 +411,12 @@ int kernctl_buffer_flush(int fd) return ioctl(fd, RING_BUFFER_FLUSH); } +/* returns the version of the metadata. */ +int kernctl_get_metadata_version(int fd, uint64_t *version) +{ + return ioctl(fd, RING_BUFFER_GET_METADATA_VERSION, version); +} + /* Buffer operations */ @@ -532,3 +543,15 @@ int kernctl_get_current_timestamp(int fd, uint64_t *ts) { return ioctl(fd, LTTNG_RING_BUFFER_GET_CURRENT_TIMESTAMP, ts); } + +/* Returns the packet sequence number of the current sub-buffer. */ +int kernctl_get_sequence_number(int fd, uint64_t *seq) +{ + return ioctl(fd, LTTNG_RING_BUFFER_GET_SEQ_NUM, seq); +} + +/* Returns the stream instance id. */ +int kernctl_get_instance_id(int fd, uint64_t *id) +{ + return ioctl(fd, LTTNG_RING_BUFFER_INSTANCE_ID, id); +}