Here's the scoop.
As I previously reported, I have an exim process stuck (for about 24
hours).
10 T exim 22456 1 0 128 20 4277c40 96 Oct 14 ?
0:00 /local/exim/exim -Mc 0vCqPm-0005q8-
Attaching to this process:
(gdb) where
#0 0x80838850 in _write ()
#1 0x37ed0 in write_chunk (fd=warning: reading register r11: I/O error
0,
chunk=0x400104a8 'y' <repeats 12 times>, "\r\n", 'y' <repeats 186 times>..., len=592, from_hack=warning: reading register r12: I/O error
0, use_crlf=1, smtp_dots=1) at transport.c:241
#2 0x38118 in transport_write_message (fd=8, add_return_path=1073808552,
add_delivery_date=8192, from_hack=0, use_crlf=1, smtp_dots=1,
errors_to=0x0, size_limit=0) at transport.c:348
#3 0x42f1c in smtp_deliver (addrlist=0x4000c318, host=0x4000c8c0,
port=2063809296, transport_name=0x4000b8a8 "smtp", ob=0x4000b8d8)
at smtp.c:747
#4 0x43a30 in smtp_transport_entry (tblock=0x4000b868, addrlist=0x4000c318)
at smtp.c:1279
#5 0x19d34 in deliver_message (id=0x7b033015 "0vCqPm-0005q8-00",
forced=1073747024, give_up=1) at deliver.c:2425
#6 0x1dbbc in main (argc=3, argv=0x7b033328) at exim.c:1249
I see that the message is about 1MB of garbage. I don't know why the
write() is hanging. Shouldn't it timeout?