projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
doc: how to trace consumerd with valgrind
[lttng-tools.git]
/
src
/
common
/
compat
/
poll.h
diff --git
a/src/common/compat/poll.h
b/src/common/compat/poll.h
index f892c832333eb10bdfcc4cf64d66918c17d3ab02..d4bd87f589213fbace764f2f2d3d152551d5ab5a 100644
(file)
--- a/
src/common/compat/poll.h
+++ b/
src/common/compat/poll.h
@@
-73,7
+73,7
@@
enum {
LPOLLNVAL = EPOLLHUP,
LPOLLRDHUP = EPOLLRDHUP,
/* Close on exec feature of epoll */
LPOLLNVAL = EPOLLHUP,
LPOLLRDHUP = EPOLLRDHUP,
/* Close on exec feature of epoll */
-#if
__GLIBC_PREREQ(2, 9
)
+#if
defined(HAVE_EPOLL_CREATE1) && defined(EPOLL_CLOEXEC
)
LTTNG_CLOEXEC = EPOLL_CLOEXEC,
#else
/*
LTTNG_CLOEXEC = EPOLL_CLOEXEC,
#else
/*
@@
-127,7
+127,7
@@
extern int compat_epoll_create(struct lttng_poll_event *events,
#define lttng_poll_create(events, size, flags) \
compat_epoll_create(events, size, flags)
#define lttng_poll_create(events, size, flags) \
compat_epoll_create(events, size, flags)
-#if
__GLIBC_PREREQ(2, 9
)
+#if
defined(HAVE_EPOLL_CREATE1) && defined(EPOLL_CLOEXEC
)
static inline int compat_glibc_epoll_create(int size __attribute__((unused)),
int flags)
{
static inline int compat_glibc_epoll_create(int size __attribute__((unused)),
int flags)
{
@@
-171,10
+171,18
@@
extern int compat_epoll_del(struct lttng_poll_event *events, int fd);
#define lttng_poll_del(events, fd) \
compat_epoll_del(events, fd)
#define lttng_poll_del(events, fd) \
compat_epoll_del(events, fd)
+/*
+ * Modify an fd's events in the epoll set.
+ */
+extern int compat_epoll_mod(struct lttng_poll_event *events,
+ int fd, uint32_t req_events);
+#define lttng_poll_mod(events, fd, req_events) \
+ compat_epoll_add(events, fd, req_events)
+
/*
* Set up the poll set limits variable poll_max_size
*/
/*
* Set up the poll set limits variable poll_max_size
*/
-extern
void
compat_epoll_set_max_size(void);
+extern
int
compat_epoll_set_max_size(void);
#define lttng_poll_set_max_size() \
compat_epoll_set_max_size()
#define lttng_poll_set_max_size() \
compat_epoll_set_max_size()
@@
-217,7
+225,7
@@
static inline void lttng_poll_clean(struct lttng_poll_event *events)
if (events->epfd >= 0) {
ret = close(events->epfd);
if (ret) {
if (events->epfd >= 0) {
ret = close(events->epfd);
if (ret) {
-
perror
("close");
+
PERROR
("close");
}
}
}
}
@@
-254,7
+262,7
@@
enum {
#if __linux__
LPOLLMSG = POLLMSG,
LPOLLRDHUP = POLLRDHUP,
#if __linux__
LPOLLMSG = POLLMSG,
LPOLLRDHUP = POLLRDHUP,
-#elif (defined(__FreeBSD__) || defined(__CYGWIN__))
+#elif (defined(__FreeBSD__) || defined(__CYGWIN__)
|| defined(__sun__) || defined(__APPLE__)
)
LPOLLMSG = 0,
LPOLLRDHUP = 0,
#else
LPOLLMSG = 0,
LPOLLRDHUP = 0,
#else
@@
-285,8
+293,7
@@
struct compat_poll_event {
* execution before a poll wait is done.
*/
struct compat_poll_event_array current;
* execution before a poll wait is done.
*/
struct compat_poll_event_array current;
- /* Indicate if wait.events needs to be realloc. */
- int need_realloc:1;
+
/* Indicate if wait.events need to be updated from current. */
int need_update:1;
};
/* Indicate if wait.events need to be updated from current. */
int need_update:1;
};
@@
-348,10
+355,18
@@
extern int compat_poll_del(struct lttng_poll_event *events, int fd);
#define lttng_poll_del(events, fd) \
compat_poll_del(events, fd)
#define lttng_poll_del(events, fd) \
compat_poll_del(events, fd)
+/*
+ * Modify an fd's events in the epoll set.
+ */
+extern int compat_poll_mod(struct lttng_poll_event *events,
+ int fd, uint32_t req_events);
+#define lttng_poll_mod(events, fd, req_events) \
+ compat_poll_add(events, fd, req_events)
+
/*
* Set up the poll set limits variable poll_max_size
*/
/*
* Set up the poll set limits variable poll_max_size
*/
-extern
void
compat_poll_set_max_size(void);
+extern
int
compat_poll_set_max_size(void);
#define lttng_poll_set_max_size() \
compat_poll_set_max_size()
#define lttng_poll_set_max_size() \
compat_poll_set_max_size()
This page took
0.027858 seconds
and
4
git commands to generate.