X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=liblttng-ust%2Flttng-ust-abi.c;h=c0e089d0022b5362dc44b477c5349bdb08d553dd;hb=616d3093e1c34557aca7e9f6149338f43cf91886;hp=05f3d5881b49ae1565fe45027719e107577315ac;hpb=902e13794ab77170a59123c3c62c5d6204941756;p=lttng-ust.git diff --git a/liblttng-ust/lttng-ust-abi.c b/liblttng-ust/lttng-ust-abi.c index 05f3d588..c0e089d0 100644 --- a/liblttng-ust/lttng-ust-abi.c +++ b/liblttng-ust/lttng-ust-abi.c @@ -1,10 +1,25 @@ /* * lttng-ust-abi.c * - * Copyright 2010-2011 (c) - Mathieu Desnoyers - * * LTTng UST ABI * + * Copyright (C) 2010-2012 Mathieu Desnoyers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; only + * version 2.1 of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * * Mimic system calls for: * - session creation, returns an object descriptor or failure. * - channel creation, returns an object descriptor or failure. @@ -20,8 +35,6 @@ * - Takes an instrumentation source as parameter * - e.g. tracepoints, dynamic_probes... * - Takes instrumentation source specific arguments. - * - * Dual LGPL v2.1/GPL v2 license. */ #include @@ -30,6 +43,7 @@ #include #include #include +#include "tracepoint-internal.h" #include #include #include "ltt-tracer.h" @@ -404,7 +418,9 @@ int lttng_abi_create_channel(int session_objd, chan_param->switch_timer_interval, chan_param->read_timer_interval, &uargs->channel.shm_fd, + &uargs->channel.shm_path, &uargs->channel.wait_fd, + &uargs->channel.wait_pipe_path, &uargs->channel.memory_map_size, &chan_priv_init); if (!chan) { @@ -603,9 +619,9 @@ int lttng_abi_open_stream(int channel_objd, struct lttng_ust_stream *info, int stream_objd, ret; buf = channel->ops->buffer_read_open(channel->chan, channel->handle, - &uargs->stream.shm_fd, - &uargs->stream.wait_fd, - &uargs->stream.memory_map_size); + &uargs->stream.shm_fd, &uargs->stream.shm_path, + &uargs->stream.wait_fd, &uargs->stream.wait_pipe_path, + &uargs->stream.memory_map_size); if (!buf) return -ENOENT; @@ -767,6 +783,8 @@ long lttng_channel_cmd(int objd, unsigned int cmd, unsigned long arg, return ltt_channel_disable(channel); case LTTNG_UST_FLUSH_BUFFER: return channel->ops->flush_buffer(channel->chan, channel->handle); + case LTTNG_UST_STREAM_PIPE: + return channel->ops->channel_open_pipe(channel->chan, channel->handle); default: return -EINVAL; } @@ -803,6 +821,8 @@ long lttng_metadata_cmd(int objd, unsigned int cmd, unsigned long arg, } case LTTNG_UST_FLUSH_BUFFER: return channel->ops->flush_buffer(channel->chan, channel->handle); + case LTTNG_UST_STREAM_PIPE: + return channel->ops->channel_open_pipe(channel->chan, channel->handle); default: return -EINVAL; }