From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH 4/4] tools/libxl: Initialise the fd of the unused half of a datacopier Date: Fri, 17 Jul 2015 17:56:55 +0100 Message-ID: <55A933D7.70703@citrix.com> References: <1437151878-11792-1-git-send-email-andrew.cooper3@citrix.com> <1437151878-11792-5-git-send-email-andrew.cooper3@citrix.com> <20150717165536.GT12455@zion.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20150717165536.GT12455@zion.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Wei Liu Cc: Ian Jackson , Ian Campbell , Xen-devel List-Id: xen-devel@lists.xenproject.org On 17/07/15 17:55, Wei Liu wrote: > On Fri, Jul 17, 2015 at 05:51:18PM +0100, Andrew Cooper wrote: >> This bug causes a spurious failure if stdin happens to be an >> appropriately readable/writeable pipe which receives a POLLHUP >> >> Signed-off-by: Andrew Cooper >> CC: Ian Campbell >> CC: Ian Jackson >> CC: Wei Liu >> --- >> tools/libxl/libxl_stream_read.c | 1 + >> tools/libxl/libxl_stream_write.c | 1 + >> 2 files changed, 2 insertions(+) >> >> diff --git a/tools/libxl/libxl_stream_read.c b/tools/libxl/libxl_stream_read.c >> index 3e1cd2a..32a3551 100644 >> --- a/tools/libxl/libxl_stream_read.c >> +++ b/tools/libxl/libxl_stream_read.c >> @@ -611,6 +611,7 @@ static void write_emulator_blob(libxl__egc *egc, >> dc->writewhat = "qemu save file"; >> dc->copywhat = "restore v2 stream"; >> dc->writefd = writefd; >> + dc->readfd = -1; >> dc->maxsz = -1; >> dc->callback = write_emulator_done; >> >> diff --git a/tools/libxl/libxl_stream_write.c b/tools/libxl/libxl_stream_write.c >> index 94f681b..47f71c0 100644 >> --- a/tools/libxl/libxl_stream_write.c >> +++ b/tools/libxl/libxl_stream_write.c >> @@ -389,6 +389,7 @@ static void write_emulator_record(libxl__egc *egc, >> dc->readwhat = "qemu save file"; >> dc->copywhat = "save v2 stream"; >> dc->readfd = readfd; >> + dc->readfd = -1; > writefd Oops :s yes. ~Andrew