Lines Matching refs:loop
27 int uv__epoll_init(uv_loop_t* loop) { in uv__epoll_init() argument
41 loop->backend_fd = fd; in uv__epoll_init()
49 void uv__platform_invalidate_fd(uv_loop_t* loop, int fd) { in uv__platform_invalidate_fd() argument
55 assert(loop->watchers != NULL); in uv__platform_invalidate_fd()
58 events = (struct epoll_event*) loop->watchers[loop->nwatchers]; in uv__platform_invalidate_fd()
59 nfds = (uintptr_t) loop->watchers[loop->nwatchers + 1]; in uv__platform_invalidate_fd()
72 if (loop->backend_fd >= 0) { in uv__platform_invalidate_fd()
77 epoll_ctl(loop->backend_fd, EPOLL_CTL_DEL, fd, &dummy); in uv__platform_invalidate_fd()
82 int uv__io_check_fd(uv_loop_t* loop, int fd) { in uv__io_check_fd() argument
91 if (epoll_ctl(loop->backend_fd, EPOLL_CTL_ADD, fd, &e)) in uv__io_check_fd()
96 if (epoll_ctl(loop->backend_fd, EPOLL_CTL_DEL, fd, &e)) in uv__io_check_fd()
103 void uv__io_poll(uv_loop_t* loop, int timeout) { in uv__io_poll() argument
136 if (loop->nfds == 0) { in uv__io_poll()
137 assert(QUEUE_EMPTY(&loop->watcher_queue)); in uv__io_poll()
143 while (!QUEUE_EMPTY(&loop->watcher_queue)) { in uv__io_poll()
144 q = QUEUE_HEAD(&loop->watcher_queue); in uv__io_poll()
151 assert(w->fd < (int) loop->nwatchers); in uv__io_poll()
164 if (epoll_ctl(loop->backend_fd, op, w->fd, &e)) { in uv__io_poll()
171 if (epoll_ctl(loop->backend_fd, EPOLL_CTL_MOD, w->fd, &e)) in uv__io_poll()
179 if (loop->flags & UV_LOOP_BLOCK_SIGPROF) { in uv__io_poll()
186 base = loop->time; in uv__io_poll()
190 if (uv__get_internal_fields(loop)->flags & UV_METRICS_IDLE_TIME) { in uv__io_poll()
213 uv__metrics_set_provider_entry_time(loop); in uv__io_poll()
226 nfds = epoll_pwait(loop->backend_fd, in uv__io_poll()
236 nfds = epoll_wait(loop->backend_fd, in uv__io_poll()
254 SAVE_ERRNO(uv__update_time(loop)); in uv__io_poll()
312 assert(loop->watchers != NULL); in uv__io_poll()
313 loop->watchers[loop->nwatchers] = x.watchers; in uv__io_poll()
314 loop->watchers[loop->nwatchers + 1] = (void*) (uintptr_t) nfds; in uv__io_poll()
326 assert((unsigned) fd < loop->nwatchers); in uv__io_poll()
328 w = loop->watchers[fd]; in uv__io_poll()
336 epoll_ctl(loop->backend_fd, EPOLL_CTL_DEL, fd, pe); in uv__io_poll()
370 if (w == &loop->signal_io_watcher) { in uv__io_poll()
373 uv__metrics_update_idle_time(loop); in uv__io_poll()
374 w->cb(loop, w, pe->events); in uv__io_poll()
387 uv__metrics_update_idle_time(loop); in uv__io_poll()
388 loop->signal_io_watcher.cb(loop, &loop->signal_io_watcher, POLLIN); in uv__io_poll()
391 loop->watchers[loop->nwatchers] = NULL; in uv__io_poll()
392 loop->watchers[loop->nwatchers + 1] = NULL; in uv__io_poll()
415 real_timeout -= (loop->time - base); in uv__io_poll()