[Libguestfs] [PATCH 1/2] Fix tar-in command hangs when running out of disk space

Matthew Booth mbooth at redhat.com
Thu Apr 8 08:41:26 UTC 2010


On 08/04/10 08:58, Richard W.M. Jones wrote:
>>From 07f4b20ae959069fca41756b0dc103ec5fa99754 Mon Sep 17 00:00:00 2001
> From: Richard Jones <rjones at redhat.com>
> Date: Thu, 8 Apr 2010 08:48:38 +0100
> Subject: [PATCH 1/2] Fix tar-in command hangs when running out of disk space (RHBZ#580246).
> 
> The problem was this sequence of events:
> 
>  (1) File transfer goes through OK.
> 
>  (2) pclose returns failure (because 'tar' subprocess failed)
> 
>  (3) We try to cancel the transfer by calling cancel_receive.
> 
> Step (3) fails because the transfer (as far as the library is
> concerned) has succeeded, so causing a hang.
> 
> The more fundamental reason why we see steps (1) and (2) is that
> 'tar' does NOT fail immediately if there is a write error.  Instead
> it continues reading and discarding the input until the end of the
> input before giving "Error exit delayed from previous errors".
> IMHO this is a bug with tar, since an ENOSPC write error should
> be fatal for tar.

ACK.

Matt
-- 
Matthew Booth, RHCA, RHCSS
Red Hat Engineering, Virtualisation Team

M:       +44 (0)7977 267231
GPG ID:  D33C3490
GPG FPR: 3733 612D 2D05 5458 8A8A 1600 3441 EA19 D33C 3490




More information about the Libguestfs mailing list