[Dovecot] RE: epoll error when running as proxy
Bill Boebel
bill at webmail.us
Fri Feb 10 01:55:56 EET 2006
Interesting. The error is occurring during an EPOLL_CTL_MOD operation
within the io_loop_handle_add() function. So I am not positive that what
you point out is in fact the problem. If it was occurring within the
io_loop_handle_remove() function then what you point out might be the
case, but thats not where its happening. Unless maybe it is referencing
the wrong file descriptor in it's io_list because of a previous file
descriptor getting closed unexpectedly. Hmm...
I am surprised nobody else has mentioned this error on the list before.
It seems like it would be rather common.
Bill
On Thursday, February 9, 2006 17:56, Václav Haisman said:
>
>
> Bill Boebel wrote:
> >>> imap-login: io_loop_handle_add: epoll_ctl(op=3, fd=10, ret=-1,
>>>> errno=2):
> >>> No such file or directory
> >>>
> >> Could it be that similarly to kqueue on *BSD the Linux kernel
> >> unregisters/removes the handle automatically when it gets closed? And
> >> that dovecot closes it before unregistering it from epoll?
> >>
> >
> > I don't know enough about epoll to answer that. I do see that in
> > src/lib/ioloop-epoll.c, the "io_loop_handler_init()" function calls
>> this,
> > which sounds related.:
> >
> > fd_close_on_exec(ctx->epfd, TRUE);
> >
> > But again, I am not very familiar with the specifics of epoll. Maybe
> > somebody else on this list knows?
> This means the fd will be closed on exec() but I mean the case where the
> fd is closed by hand without exec().
>
> And to answer my own question (question/answer 6):
> http://www.die.net/doc/linux/man/man4/epoll.4.html
>
> I think it might be the cause of the error message.
>
> >
> > Thanks,
> > Bill
>
> VH
>
>
More information about the dovecot
mailing list