University of Cambridge
On Wed, 5 Jan 2011, Tony Finch wrote:
> 28.12.2010 5:39, Phil Pennock пишет:
>>
>> This is a bug in Exim. Looking at the code, I'm rather shocked that
>> it has never bitten us before now.
>> http://bugs.exim.org/show_bug.cgi?id=1053
>
> I'm not convinced this is correct, since at the point in the code where the
> panic occurs, Exim believes it is writing to a disk file and short writes
> should not occur.
>
> Artem, can you reproduce the bug when running Exim under ktrace -di and/or
> with the patch to log.c below? The st_mode value might tell us something
> interesting.
Agreed -- I think the important question to answer here is whether the
descriptor being written to is a file or not. It looks like there are paths
where stderr, for example, can end up being written to -- which might well be
a pipe/socket/fifo and hence legitimately get EINTR, making this an Exim bug.
Or it might be a file, in which case most likely we're looking at a file
system bug, which we need to track down and fix.
Robert