Displaying 4 results from an estimated 4 matches for "evfilt_write".
2003 Apr 16
1
PATCH Add support for kqueue in ioloop subsystem
...ioloop->handler_data);
}
void io_loop_handle_add(struct ioloop *ioloop, int fd, int condition)
{
short filter;
struct ioloop_handler_data *data = ioloop->handler_data;
i_assert(fd >= 0);
if (condition & IO_READ)
filter |= EVFILT_READ;
if (condition & IO_WRITE)
filter |= EVFILT_WRITE;
EV_SET(&data->event, fd, filter, EV_ADD, 0, 0, NULL);
if (kevent(data->kq, &data->event, 1, NULL, 0, NULL) < 0) {
i_warning("couldn't add filter with kqueue: %m");
}
}
void io_loop_handle_remove(struct ioloop *ioloop, int fd, int condition)
{
short filter;...
2004 Oct 25
0
[PATCH] Request for testing: BSD kqueue ioloop handler
...oop->pool, data->events,
+ sizeof(int) * old_size,
+ sizeof(int) * data->events_size);
+ }
+ data->events_pos++;
+
+ iolist_add(list, io);
+
+ event = data->events + data->events_changed;
+ data->events_changed++;
+
+ EV_SET(event, fd, iolist_events(list, EVFILT_READ, EVFILT_WRITE),
+ EV_ADD | EV_EOF, 0, 0, io);
+}
+
+void io_loop_handle_remove(struct ioloop *ioloop, struct io *io)
+{
+ struct ioloop_handler_data *data = ioloop->handler_data;
+ struct io_list *list = data->fd_index[io->fd];
+ struct kevent *event;
+ int i, changed = data->events_changed;
+
+...
2005 Dec 14
2
Patch: ioloop using kqueue/kevent for FreeBSD
...s[io->fd].mode |= condition;
+ ev.filter = EVFILT_READ;
+ kevent(ctx->kq, &ev, 1, NULL, 0, NULL);
+ }
+ if (condition & (IO_WRITE | IO_ERROR))
+ {
+ ctx->fds[io->fd].mode |= condition;
+ ev.filter = EVFILT_WRITE;
+ kevent(ctx->kq, &ev, 1, NULL, 0, NULL);
+ }
+}
+
+
+void io_loop_handle_remove(struct ioloop *ioloop, struct io *io)
+{
+ struct ioloop_handler_context *ctx = ioloop->handler_context;
+ struct fdrecord * const fds = ctx->fds;
+ const int f...
2016 Jul 04
3
kqueue crash on FreeBSD with 2.2.25
On 16-07-03 03:30:36, Timo Sirainen wrote:
> On 02 Jul 2016, at 03:30, Adam Weinberger <adamw at adamw.org> wrote:
> >
> >>> Jul 1 10:07:27 imap dovecot: master: Panic: kevent(EV_ADD, READ, 54) failed: Bad file descriptor
> >>>
> >>> It's not dumping core, and I get the message even with "protocols ="
> >>>
>