OK, should have given more details

Calibre 2.44.1 running on OS X 10.10.5.
However, your suggestion might still hold on OS X too - the plugin has borrowed the kindleunpack code and that is verbose AF (to the point I made an earlier fix to stop it from telling me it had encountered some zeros, and then all 16k zeros it found!).
I hadn't realised that the pipe error might be overflow rather than disconnection. Does it make sense that the problem never resolves?
Your suggestion might well explain why it is sometimes hit but not always, as buffer filling is likely to be system load dependent.
Thanks for the pointer - I'll dig more and see what I can figure out.
Cheers,
Anthony