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. */
43 ret
= write(wpipe
, "!", 1);
44 } while (ret
< 0 && errno
== EINTR
);
46 PERROR("write poll pipe");
52 void ht_cleanup_push(struct lttng_ht
*ht
)
55 int fd
= ht_cleanup_pipe
[1];
60 ret
= write(fd
, &ht
, sizeof(ht
));
61 } while (ret
< 0 && errno
== EINTR
);
62 if (ret
< 0 || ret
!= sizeof(ht
)) {
63 PERROR("write ht cleanup pipe %d", fd
);
70 /* All good. Don't send back the write positive ret value. */
This page took 0.031381 seconds and 4 git commands to generate.