Re: NONBLOCKing close blocks in named

kuznet@ms2.inr.ac.ru
Sat, 18 Sep 1999 17:28:33 +0400 (MSK DST)


Hello!

> Should have mentioned that I checked that. According to the strace,
> SO_LINGER hasn't been set or unset on that file descriptor (curiously, it
> had been set on a previous socket from the same IP and with the same file
> descriptor number).

Check again, bind-8.x.x (unlike bind-4.x.x) really has this weird bug,
setting linger in main executon thread.

> Even where the LINGER was set (elsewhere in the code) it was set to 120
> (units - seconds? - claims to be hundreths of seconds in the setsockopt
> man page but I think that's wrong). In the problem that I demonstrated,
> close took 11 minutes to return!

Until recently linux 2.2 ignored finite linger value, translating
it to infinite one. It is fixed though it is wrong: finite linger
values are non-sense: bind dead for 120 seconds is buggy in the same
extent. Actually, almost any application trying to set finite linger
value is broken.

> I'm tempted to comment out the only SO_LINGER entry in BIND (it doesn't
> seem to be needed) to see it help - I'm not sure.

It will help and it is necessary to make bind-8 working.

Alexey Kuznetsov

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/