epoll_ev           48 lib/tevent/tevent_epoll.c static void epoll_panic(struct epoll_event_context *epoll_ev, const char *reason)
epoll_ev           50 lib/tevent/tevent_epoll.c 	tevent_debug(epoll_ev->ev, TEVENT_DEBUG_FATAL,
epoll_ev           69 lib/tevent/tevent_epoll.c static int epoll_ctx_destructor(struct epoll_event_context *epoll_ev)
epoll_ev           71 lib/tevent/tevent_epoll.c 	close(epoll_ev->epoll_fd);
epoll_ev           72 lib/tevent/tevent_epoll.c 	epoll_ev->epoll_fd = -1;
epoll_ev           79 lib/tevent/tevent_epoll.c static int epoll_init_ctx(struct epoll_event_context *epoll_ev)
epoll_ev           81 lib/tevent/tevent_epoll.c 	epoll_ev->epoll_fd = epoll_create(64);
epoll_ev           82 lib/tevent/tevent_epoll.c 	epoll_ev->pid = getpid();
epoll_ev           83 lib/tevent/tevent_epoll.c 	talloc_set_destructor(epoll_ev, epoll_ctx_destructor);
epoll_ev           84 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) {
epoll_ev           90 lib/tevent/tevent_epoll.c static void epoll_add_event(struct epoll_event_context *epoll_ev, struct tevent_fd *fde);
epoll_ev           97 lib/tevent/tevent_epoll.c static void epoll_check_reopen(struct epoll_event_context *epoll_ev)
epoll_ev          101 lib/tevent/tevent_epoll.c 	if (epoll_ev->pid == getpid()) {
epoll_ev          105 lib/tevent/tevent_epoll.c 	close(epoll_ev->epoll_fd);
epoll_ev          106 lib/tevent/tevent_epoll.c 	epoll_ev->epoll_fd = epoll_create(64);
epoll_ev          107 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) {
epoll_ev          108 lib/tevent/tevent_epoll.c 		tevent_debug(epoll_ev->ev, TEVENT_DEBUG_FATAL,
epoll_ev          112 lib/tevent/tevent_epoll.c 	epoll_ev->pid = getpid();
epoll_ev          113 lib/tevent/tevent_epoll.c 	for (fde=epoll_ev->ev->fd_events;fde;fde=fde->next) {
epoll_ev          114 lib/tevent/tevent_epoll.c 		epoll_add_event(epoll_ev, fde);
epoll_ev          125 lib/tevent/tevent_epoll.c static void epoll_add_event(struct epoll_event_context *epoll_ev, struct tevent_fd *fde)
epoll_ev          129 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) return;
epoll_ev          139 lib/tevent/tevent_epoll.c 	if (epoll_ctl(epoll_ev->epoll_fd, EPOLL_CTL_ADD, fde->fd, &event) != 0) {
epoll_ev          140 lib/tevent/tevent_epoll.c 		epoll_panic(epoll_ev, "EPOLL_CTL_ADD failed");
epoll_ev          153 lib/tevent/tevent_epoll.c static void epoll_del_event(struct epoll_event_context *epoll_ev, struct tevent_fd *fde)
epoll_ev          157 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) return;
epoll_ev          167 lib/tevent/tevent_epoll.c 	if (epoll_ctl(epoll_ev->epoll_fd, EPOLL_CTL_DEL, fde->fd, &event) != 0) {
epoll_ev          168 lib/tevent/tevent_epoll.c 		tevent_debug(epoll_ev->ev, TEVENT_DEBUG_FATAL,
epoll_ev          178 lib/tevent/tevent_epoll.c static void epoll_mod_event(struct epoll_event_context *epoll_ev, struct tevent_fd *fde)
epoll_ev          181 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) return;
epoll_ev          188 lib/tevent/tevent_epoll.c 	if (epoll_ctl(epoll_ev->epoll_fd, EPOLL_CTL_MOD, fde->fd, &event) != 0) {
epoll_ev          189 lib/tevent/tevent_epoll.c 		epoll_panic(epoll_ev, "EPOLL_CTL_MOD failed");
epoll_ev          198 lib/tevent/tevent_epoll.c static void epoll_change_event(struct epoll_event_context *epoll_ev, struct tevent_fd *fde)
epoll_ev          204 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) return;
epoll_ev          211 lib/tevent/tevent_epoll.c 			epoll_mod_event(epoll_ev, fde);
epoll_ev          220 lib/tevent/tevent_epoll.c 		epoll_del_event(epoll_ev, fde);
epoll_ev          226 lib/tevent/tevent_epoll.c 		epoll_add_event(epoll_ev, fde);
epoll_ev          234 lib/tevent/tevent_epoll.c static int epoll_event_loop(struct epoll_event_context *epoll_ev, struct timeval *tvalp)
epoll_ev          241 lib/tevent/tevent_epoll.c 	if (epoll_ev->epoll_fd == -1) return -1;
epoll_ev          248 lib/tevent/tevent_epoll.c 	if (epoll_ev->ev->signal_events &&
epoll_ev          249 lib/tevent/tevent_epoll.c 	    tevent_common_check_signal(epoll_ev->ev)) {
epoll_ev          253 lib/tevent/tevent_epoll.c 	ret = epoll_wait(epoll_ev->epoll_fd, events, MAXEVENTS, timeout);
epoll_ev          255 lib/tevent/tevent_epoll.c 	if (ret == -1 && errno == EINTR && epoll_ev->ev->signal_events) {
epoll_ev          256 lib/tevent/tevent_epoll.c 		if (tevent_common_check_signal(epoll_ev->ev)) {
epoll_ev          262 lib/tevent/tevent_epoll.c 		epoll_panic(epoll_ev, "epoll_wait() failed");
epoll_ev          268 lib/tevent/tevent_epoll.c 		tevent_common_loop_timer_delay(epoll_ev->ev);
epoll_ev          278 lib/tevent/tevent_epoll.c 			epoll_panic(epoll_ev, "epoll_wait() gave bad data");
epoll_ev          290 lib/tevent/tevent_epoll.c 				epoll_del_event(epoll_ev, fde);
epoll_ev          298 lib/tevent/tevent_epoll.c 			fde->handler(epoll_ev->ev, fde, flags, fde->private_data);
epoll_ev          312 lib/tevent/tevent_epoll.c 	struct epoll_event_context *epoll_ev;
epoll_ev          314 lib/tevent/tevent_epoll.c 	epoll_ev = talloc_zero(ev, struct epoll_event_context);
epoll_ev          315 lib/tevent/tevent_epoll.c 	if (!epoll_ev) return -1;
epoll_ev          316 lib/tevent/tevent_epoll.c 	epoll_ev->ev = ev;
epoll_ev          317 lib/tevent/tevent_epoll.c 	epoll_ev->epoll_fd = -1;
epoll_ev          319 lib/tevent/tevent_epoll.c 	ret = epoll_init_ctx(epoll_ev);
epoll_ev          321 lib/tevent/tevent_epoll.c 		talloc_free(epoll_ev);
epoll_ev          325 lib/tevent/tevent_epoll.c 	ev->additional_data = epoll_ev;
epoll_ev          335 lib/tevent/tevent_epoll.c 	struct epoll_event_context *epoll_ev = NULL;
epoll_ev          338 lib/tevent/tevent_epoll.c 		epoll_ev = talloc_get_type(ev->additional_data,
epoll_ev          341 lib/tevent/tevent_epoll.c 		epoll_check_reopen(epoll_ev);
epoll_ev          343 lib/tevent/tevent_epoll.c 		epoll_del_event(epoll_ev, fde);
epoll_ev          360 lib/tevent/tevent_epoll.c 	struct epoll_event_context *epoll_ev = talloc_get_type(ev->additional_data,
epoll_ev          364 lib/tevent/tevent_epoll.c 	epoll_check_reopen(epoll_ev);
epoll_ev          373 lib/tevent/tevent_epoll.c 	epoll_add_event(epoll_ev, fde);
epoll_ev          384 lib/tevent/tevent_epoll.c 	struct epoll_event_context *epoll_ev;
epoll_ev          389 lib/tevent/tevent_epoll.c 	epoll_ev = talloc_get_type(ev->additional_data, struct epoll_event_context);
epoll_ev          393 lib/tevent/tevent_epoll.c 	epoll_check_reopen(epoll_ev);
epoll_ev          395 lib/tevent/tevent_epoll.c 	epoll_change_event(epoll_ev, fde);
epoll_ev          403 lib/tevent/tevent_epoll.c 	struct epoll_event_context *epoll_ev = talloc_get_type(ev->additional_data,
epoll_ev          422 lib/tevent/tevent_epoll.c 	epoll_check_reopen(epoll_ev);
epoll_ev          424 lib/tevent/tevent_epoll.c 	return epoll_event_loop(epoll_ev, &tval);