[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] lxc_controller.c: don't ignore failed "accept"



Daniel P. Berrange wrote:

> On Tue, Feb 02, 2010 at 11:58:44AM +0100, Jim Meyering wrote:
>> coverity complained (rightly) about the risk of closing a negative
>> file descriptor.  However, the real problem was the missing test
>> for a failed "accept" call.  I'm not 100% sure that a failed
>> accept call deserves to provoke a "goto cleanup", but doing that
>> is consistent with what the nearby code does upon epoll_ctl failure.
>
> This isn't correct because the incoming client can quit between the
> time of poll() indicating its presence, and accept() trying to process
> it. This is an expected non-fatal scenario, so it should just be
> ignored without quitting. epoll_ctl() by comparison is a fatal system
> error, so has to be handled as an unrecoverable error

Ok, so some errno values are ignorable.
Do you also want to ignore the likes of EMFILE, ENFILE, EPERM, etc?

Otherwise, I propose to enumerate "ignorable-errno" values
and treat any others as unrecoverable.
Do you know which errno values should be ignored?


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]