Deleted
Added
nxt_epoll_engine.c (564:762f8c976ead) | nxt_epoll_engine.c (611:323e11065f83) |
---|---|
1 2/* 3 * Copyright (C) Igor Sysoev 4 * Copyright (C) NGINX, Inc. 5 */ 6 7#include <nxt_main.h> 8 --- 810 unchanged lines hidden (view full) --- 819 nxt_event_engine_t *engine; 820 821 engine = data; 822 823 nxt_debug(task, "eventfd handler, times:%ui", engine->u.epoll.neventfd); 824 825 /* 826 * The maximum value after write() to a eventfd() descriptor will | 1 2/* 3 * Copyright (C) Igor Sysoev 4 * Copyright (C) NGINX, Inc. 5 */ 6 7#include <nxt_main.h> 8 --- 810 unchanged lines hidden (view full) --- 819 nxt_event_engine_t *engine; 820 821 engine = data; 822 823 nxt_debug(task, "eventfd handler, times:%ui", engine->u.epoll.neventfd); 824 825 /* 826 * The maximum value after write() to a eventfd() descriptor will |
827 * block or return EAGAIN is 0xfffffffffffffffe, so the descriptor | 827 * block or return EAGAIN is 0xFFFFFFFFFFFFFFFE, so the descriptor |
828 * can be read once per many notifications, for example, once per 829 * 2^32-2 noticifcations. Since the eventfd() file descriptor is 830 * always registered in EPOLLET mode, epoll returns event about 831 * only the latest write() to the descriptor. 832 */ 833 | 828 * can be read once per many notifications, for example, once per 829 * 2^32-2 noticifcations. Since the eventfd() file descriptor is 830 * always registered in EPOLLET mode, epoll returns event about 831 * only the latest write() to the descriptor. 832 */ 833 |
834 if (engine->u.epoll.neventfd++ >= 0xfffffffe) { | 834 if (engine->u.epoll.neventfd++ >= 0xFFFFFFFE) { |
835 engine->u.epoll.neventfd = 0; 836 837 n = read(engine->u.epoll.eventfd.fd, &events, sizeof(uint64_t)); 838 839 nxt_debug(task, "read(%d): %d events:%uL", 840 engine->u.epoll.eventfd.fd, n, events); 841 842 if (n != sizeof(uint64_t)) { --- 313 unchanged lines hidden --- | 835 engine->u.epoll.neventfd = 0; 836 837 n = read(engine->u.epoll.eventfd.fd, &events, sizeof(uint64_t)); 838 839 nxt_debug(task, "read(%d): %d events:%uL", 840 engine->u.epoll.eventfd.fd, n, events); 841 842 if (n != sizeof(uint64_t)) { --- 313 unchanged lines hidden --- |