2 * Copyright (C) 2011 - David Goulet <david.goulet@polymtl.ca>
3 * Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License, version 2 only,
7 * as published by the Free Software Foundation.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23 #include <common/error.h>
26 #include "lttng-sessiond.h"
28 int ht_cleanup_pipe
[2] = { -1, -1 };
31 * Write to writable pipe used to notify a thread.
33 int notify_thread_pipe(int wpipe
)
37 /* Ignore if the pipe is invalid. */
42 ret
= lttng_write(wpipe
, "!", 1);
44 PERROR("write poll pipe");
50 void ht_cleanup_push(struct lttng_ht
*ht
)
53 int fd
= ht_cleanup_pipe
[1];
60 ret
= lttng_write(fd
, &ht
, sizeof(ht
));
61 if (ret
< sizeof(ht
)) {
62 PERROR("write ht cleanup pipe %d", fd
);
69 /* All good. Don't send back the write positive ret value. */
75 int loglevels_match(int a_loglevel_type
, int a_loglevel_value
,
76 int b_loglevel_type
, int b_loglevel_value
, int loglevel_all_type
)
80 if (a_loglevel_type
== b_loglevel_type
) {
81 /* Same loglevel type. */
82 if (b_loglevel_type
!= loglevel_all_type
) {
84 * Loglevel value must also match since the loglevel
87 if (a_loglevel_value
!= b_loglevel_value
) {
92 /* Loglevel type is different: no match. */
99 const char *session_get_base_path(const struct ltt_session
*session
)
101 struct consumer_output
*consumer
;
103 if (session
->kernel_session
) {
104 consumer
= session
->kernel_session
->consumer
;
105 } else if (session
->ust_session
) {
106 consumer
= session
->ust_session
->consumer
;
111 if (session
->net_handle
> 0) {
112 return consumer
->dst
.net
.base_dir
;
114 return consumer
->dst
.session_root_path
;
This page took 0.031465 seconds and 4 git commands to generate.