RE: Bug #1616: assertion failed:comm_generic.c:65:"F->flags.open"onstoreResumeFD.

From: Henrik Nordstrom <henrik@dont-contact.us>
Date: Tue, 27 Jun 2006 10:14:34 +0200

tis 2006-06-27 klockan 08:16 +0800 skrev Steven Wilton:

>
> In the original code for 2.5, I had the following logic in commResumeFD() to
> handle this situation
>
> if(!(F->read_handler) || !(F->epoll_backoff)) {
> debug(5, 2) ("commResumeFD: fd=%d ignoring read_handler=%p,
> epoll_backoff=%d\n",fd,F->read_handler,F->epoll_backoff);
> F->epoll_backoff=0;
> return;
> }

Handle is a matter of definition.. the above ignores the condition.

> What about removing the backoff flag from the fde struct in fd_close(), and
> removing the assert(flags.open) from commResumeFD. This way, if a fd is
> backed off, then closed, the backoff flag will be removed. We are then left
> with 2 possible situations:

Removing the assert is fine. I'll replace it with a debug statement.

Clearing the backoff flag is redundant as the whole fde is cleared a few
lines down, and the flag is never looked unless there is also some
handlers set..

But I seriously think this bug is closed since some time back.

Regards
Henrik

Received on Tue Jun 27 2006 - 02:14:39 MDT

This archive was generated by hypermail pre-2.1.9 : Fri Jun 30 2006 - 12:00:02 MDT