summaryrefslogtreecommitdiffhomepage
path: root/src/event/modules
diff options
context:
space:
mode:
Diffstat (limited to 'src/event/modules')
-rw-r--r--src/event/modules/ngx_devpoll_module.c17
-rw-r--r--src/event/modules/ngx_kqueue_module.c29
-rw-r--r--src/event/modules/ngx_poll_module.c11
-rw-r--r--src/event/modules/ngx_select_module.c7
4 files changed, 33 insertions, 31 deletions
diff --git a/src/event/modules/ngx_devpoll_module.c b/src/event/modules/ngx_devpoll_module.c
index c8f368406..08aff29e1 100644
--- a/src/event/modules/ngx_devpoll_module.c
+++ b/src/event/modules/ngx_devpoll_module.c
@@ -101,7 +101,7 @@ ngx_module_t ngx_devpoll_module = {
static int ngx_devpoll_init(ngx_cycle_t *cycle)
{
- int n;
+ size_t n;
ngx_devpoll_conf_t *dpcf;
dpcf = ngx_event_get_conf(cycle->conf_ctx, ngx_devpoll_module);
@@ -122,7 +122,7 @@ ngx_log_debug(cycle->log, "EV: %d" _ dpcf->events);
if (max_changes < dpcf->changes) {
if (nchanges) {
n = nchanges * sizeof(struct pollfd);
- if (write(dp, change_list, n) != n) {
+ if ((size_t) write(dp, change_list, n) != n) {
ngx_log_error(NGX_LOG_ALERT, cycle->log, ngx_errno,
"write(/dev/poll) failed");
return NGX_ERROR;
@@ -271,7 +271,7 @@ static int ngx_devpoll_del_event(ngx_event_t *ev, int event, u_int flags)
static int ngx_devpoll_set_event(ngx_event_t *ev, int event, u_int flags)
{
- int n;
+ size_t n;
ngx_connection_t *c;
c = ev->data;
@@ -286,7 +286,7 @@ static int ngx_devpoll_set_event(ngx_event_t *ev, int event, u_int flags)
"/dev/pool change list is filled up");
n = nchanges * sizeof(struct pollfd);
- if (write(dp, change_list, n) != n) {
+ if ((size_t) write(dp, change_list, n) != n) {
ngx_log_error(NGX_LOG_ALERT, ev->log, ngx_errno,
"write(/dev/poll) failed");
return NGX_ERROR;
@@ -306,7 +306,7 @@ static int ngx_devpoll_set_event(ngx_event_t *ev, int event, u_int flags)
if (flags & NGX_CLOSE_EVENT) {
n = nchanges * sizeof(struct pollfd);
- if (write(dp, change_list, n) != n) {
+ if ((size_t) write(dp, change_list, n) != n) {
ngx_log_error(NGX_LOG_ALERT, ev->log, ngx_errno,
"write(/dev/poll) failed");
return NGX_ERROR;
@@ -321,7 +321,8 @@ static int ngx_devpoll_set_event(ngx_event_t *ev, int event, u_int flags)
int ngx_devpoll_process_events(ngx_log_t *log)
{
- int events, n, i, j;
+ int events, i, j;
+ size_t n;
ngx_msec_t timer;
ngx_err_t err;
ngx_cycle_t **cycle;
@@ -337,7 +338,7 @@ int ngx_devpoll_process_events(ngx_log_t *log)
delta = tv.tv_sec * 1000 + tv.tv_usec / 1000;
} else {
- timer = INFTIM;
+ timer = (ngx_msec_t) INFTIM;
delta = 0;
}
@@ -347,7 +348,7 @@ int ngx_devpoll_process_events(ngx_log_t *log)
if (nchanges) {
n = nchanges * sizeof(struct pollfd);
- if (write(dp, change_list, n) != n) {
+ if ((size_t) write(dp, change_list, n) != n) {
ngx_log_error(NGX_LOG_ALERT, log, ngx_errno,
"write(/dev/poll) failed");
return NGX_ERROR;
diff --git a/src/event/modules/ngx_kqueue_module.c b/src/event/modules/ngx_kqueue_module.c
index 259054838..f51886e1e 100644
--- a/src/event/modules/ngx_kqueue_module.c
+++ b/src/event/modules/ngx_kqueue_module.c
@@ -11,8 +11,8 @@
typedef struct {
- u_int changes;
- u_int events;
+ int changes;
+ int events;
} ngx_kqueue_conf_t;
@@ -30,7 +30,7 @@ static char *ngx_kqueue_init_conf(ngx_cycle_t *cycle, void *conf);
int ngx_kqueue = -1;
static struct kevent *change_list, *event_list;
-static u_int max_changes, nchanges, nevents;
+static int max_changes, nchanges, nevents;
static ngx_str_t kqueue_name = ngx_string("kqueue");
@@ -196,8 +196,9 @@ static int ngx_kqueue_add_event(ngx_event_t *ev, int event, u_int flags)
ev->oneshot = (flags & NGX_ONESHOT_EVENT) ? 1 : 0;
if (nchanges > 0
- && ev->index < nchanges
- && (void *) ((uintptr_t) change_list[ev->index].udata & ~1) == ev)
+ && ev->index < (u_int) nchanges
+ && ((uintptr_t) change_list[ev->index].udata & (uintptr_t) ~1)
+ == (uintptr_t) ev)
{
c = ev->data;
ngx_log_error(NGX_LOG_ALERT, ev->log, 0,
@@ -206,7 +207,7 @@ static int ngx_kqueue_add_event(ngx_event_t *ev, int event, u_int flags)
return NGX_ERROR;
}
- return ngx_kqueue_set_event(ev, event, EV_ADD | flags);
+ return ngx_kqueue_set_event(ev, event, EV_ADD|flags);
}
@@ -217,8 +218,9 @@ static int ngx_kqueue_del_event(ngx_event_t *ev, int event, u_int flags)
ev->active = 0;
if (nchanges > 0
- && ev->index < nchanges
- && (void *) ((uintptr_t) change_list[ev->index].udata & ~1) == ev)
+ && ev->index < (u_int) nchanges
+ && ((uintptr_t) change_list[ev->index].udata & (uintptr_t) ~1)
+ == (uintptr_t) ev)
{
#if (NGX_DEBUG_EVENT)
ngx_connection_t *c = (ngx_connection_t *) ev->data;
@@ -228,7 +230,7 @@ static int ngx_kqueue_del_event(ngx_event_t *ev, int event, u_int flags)
/* if the event is still not passed to a kernel we will not pass it */
- if (ev->index < --nchanges) {
+ if (ev->index < (u_int) --nchanges) {
e = (ngx_event_t *) change_list[nchanges].udata;
change_list[ev->index] = change_list[nchanges];
e->index = ev->index;
@@ -247,7 +249,8 @@ static int ngx_kqueue_del_event(ngx_event_t *ev, int event, u_int flags)
return NGX_OK;
}
- return ngx_kqueue_set_event(ev, event, EV_DELETE);
+ return ngx_kqueue_set_event(ev, event,
+ flags & NGX_DISABLE_EVENT ? EV_DISABLE : EV_DELETE);
}
@@ -420,7 +423,7 @@ static int ngx_kqueue_process_events(ngx_log_t *log)
case EVFILT_WRITE:
instance = (uintptr_t) ev & 1;
- ev = (void *) ((uintptr_t) ev & ~1);
+ ev = (ngx_event_t *) ((uintptr_t) ev & (uintptr_t) ~1);
/*
* it's a stale event from a file descriptor
@@ -486,8 +489,8 @@ static char *ngx_kqueue_init_conf(ngx_cycle_t *cycle, void *conf)
{
ngx_kqueue_conf_t *kcf = conf;
- ngx_conf_init_unsigned_value(kcf->changes, 512);
- ngx_conf_init_unsigned_value(kcf->events, 512);
+ ngx_conf_init_value(kcf->changes, 512);
+ ngx_conf_init_value(kcf->events, 512);
return NGX_CONF_OK;
}
diff --git a/src/event/modules/ngx_poll_module.c b/src/event/modules/ngx_poll_module.c
index e771e92fe..4bd4177c9 100644
--- a/src/event/modules/ngx_poll_module.c
+++ b/src/event/modules/ngx_poll_module.c
@@ -17,7 +17,7 @@ static int ngx_poll_process_events(ngx_log_t *log);
static struct pollfd *event_list;
-static u_int nevents;
+static int nevents;
static ngx_event_t **event_index;
static ngx_event_t **ready_index;
@@ -203,7 +203,7 @@ static int ngx_poll_del_event(ngx_event_t *ev, int event, u_int flags)
#endif
if (e == NULL || e->index == NGX_INVALID_INDEX) {
- if (ev->index < --nevents) {
+ if (ev->index < (u_int) --nevents) {
event_list[ev->index] = event_list[nevents];
event_index[ev->index] = event_index[nevents];
event_index[ev->index]->index = ev->index;
@@ -222,8 +222,7 @@ static int ngx_poll_del_event(ngx_event_t *ev, int event, u_int flags)
static int ngx_poll_process_events(ngx_log_t *log)
{
- int ready, found, j;
- u_int nready, i;
+ int i, j, ready, nready, found;
ngx_msec_t timer;
ngx_err_t err;
ngx_cycle_t **cycle;
@@ -239,7 +238,7 @@ static int ngx_poll_process_events(ngx_log_t *log)
delta = tv.tv_sec * 1000 + tv.tv_usec / 1000;
} else {
- timer = INFTIM;
+ timer = (ngx_msec_t) INFTIM;
delta = 0;
}
@@ -252,7 +251,7 @@ static int ngx_poll_process_events(ngx_log_t *log)
ngx_log_debug(log, "poll timer: %d" _ timer);
#endif
- ready = poll(event_list, nevents, timer);
+ ready = poll(event_list, (u_int) nevents, (int) timer);
if (ready == -1) {
err = ngx_errno;
diff --git a/src/event/modules/ngx_select_module.c b/src/event/modules/ngx_select_module.c
index 9e7a08f94..52c30dda7 100644
--- a/src/event/modules/ngx_select_module.c
+++ b/src/event/modules/ngx_select_module.c
@@ -30,7 +30,7 @@ static int max_write;
static int max_fd;
#endif
-static u_int nevents;
+static int nevents;
static ngx_event_t **event_index;
static ngx_event_t **ready_index;
@@ -233,7 +233,7 @@ static int ngx_select_del_event(ngx_event_t *ev, int event, u_int flags)
#endif
- if (ev->index < --nevents) {
+ if (ev->index < (u_int) --nevents) {
event_index[ev->index] = event_index[nevents];
event_index[ev->index]->index = ev->index;
}
@@ -247,8 +247,7 @@ static int ngx_select_del_event(ngx_event_t *ev, int event, u_int flags)
static int ngx_select_process_events(ngx_log_t *log)
{
- int ready, found;
- u_int i, nready;
+ int i, ready, nready,found;
ngx_err_t err;
ngx_msec_t timer;
ngx_event_t *ev;