On 2014-11-10 18:58, Martin Mares wrote:

Unfortunately, non-blocking operations on plain files are not supported
by most operating systems, including Linux.

It is supported though is not perfect (yet): http://man7.org/linux/man-pages/man7/aio.7.html

It would be logical to have separate thread which will handle
async logging i/o, allowing core process to operate.

Blocking for 40 seconds is a pathological case, which should not happen
on properly configured systems. Which kernel do you use?

It has nothing to do with proper configuration - if there is a lot
of i/o on a [slow] disk, this could happen, unless the destination
is a ram-disk or SSD (though SSD may block too in some cases).

IMHO, using *any* blocking calls in a routing daemon is bad idea,
especially for protocols like OSPF or BFD where timing is very critical.

On the other hand, using heavily loaded system as a router is bad idea by itself :)

Regards,
Alexander.

Reply via email to