X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fbuffer-registry.h;h=0812414e5b4f260253f10f58d5dad2cbf4035e43;hp=d17bbab623d5ae34a707d46b9d6bbf871213a8c7;hb=d37ac3cdc4fe21f117edfb829db4d0eb7cf914a1;hpb=d7ba13889c8692b14f99238ddf2721ed78df89d2 diff --git a/src/bin/lttng-sessiond/buffer-registry.h b/src/bin/lttng-sessiond/buffer-registry.h index d17bbab62..0812414e5 100644 --- a/src/bin/lttng-sessiond/buffer-registry.h +++ b/src/bin/lttng-sessiond/buffer-registry.h @@ -1,18 +1,8 @@ /* - * Copyright (C) 2013 - David Goulet + * Copyright (C) 2013 David Goulet * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License, version 2 only, as - * published by the Free Software Foundation. + * SPDX-License-Identifier: GPL-2.0-only * - * This program 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 General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along with - * this program; if not, write to the Free Software Foundation, Inc., 51 - * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef LTTNG_BUFFER_REGISTRY_H @@ -25,7 +15,7 @@ #include #include "consumer.h" -#include "ust-ctl.h" +#include "lttng-ust-ctl.h" #include "ust-registry.h" struct buffer_reg_stream { @@ -89,6 +79,7 @@ struct buffer_reg_uid { /* Node of a linked list used to teardown object at a destroy session. */ struct cds_list_head lnode; + char root_shm_path[PATH_MAX]; char shm_path[PATH_MAX]; }; @@ -103,6 +94,7 @@ struct buffer_reg_pid { /* Indexed by session id. */ struct lttng_ht_node_u64 node; + char root_shm_path[PATH_MAX]; char shm_path[PATH_MAX]; }; @@ -110,7 +102,7 @@ struct buffer_reg_pid { void buffer_reg_init_uid_registry(void); int buffer_reg_uid_create(uint64_t session_id, uint32_t bits_per_long, uid_t uid, enum lttng_domain_type domain, struct buffer_reg_uid **regp, - const char *shm_path); + const char *root_shm_path, const char *shm_path); void buffer_reg_uid_add(struct buffer_reg_uid *reg); struct buffer_reg_uid *buffer_reg_uid_find(uint64_t session_id, uint32_t bits_per_long, uid_t uid); @@ -121,7 +113,7 @@ void buffer_reg_uid_destroy(struct buffer_reg_uid *regp, /* Buffer registry per PID. */ void buffer_reg_init_pid_registry(void); int buffer_reg_pid_create(uint64_t session_id, struct buffer_reg_pid **regp, - const char *shm_path); + const char *root_shm_path, const char *shm_path); void buffer_reg_pid_add(struct buffer_reg_pid *reg); struct buffer_reg_pid *buffer_reg_pid_find(uint64_t session_id); void buffer_reg_pid_remove(struct buffer_reg_pid *regp); @@ -148,4 +140,8 @@ void buffer_reg_stream_destroy(struct buffer_reg_stream *regp, /* Global registry. */ void buffer_reg_destroy_registries(void); +int buffer_reg_uid_consumer_channel_key( + struct cds_list_head *buffer_reg_uid_list, + uint64_t chan_key, uint64_t *consumer_chan_key); + #endif /* LTTNG_BUFFER_REGISTRY_H */