[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] 100% CPU when sockfd is half-closed and unexpected beha
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] 100% CPU when sockfd is half-closed and unexpected behavior for qemu_co_send() |
Date: |
Mon, 14 Jan 2013 11:23:03 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Mon, Jan 14, 2013 at 04:16:34PM +0800, Liu Yuan wrote:
> Hi List,
> This problem can be reproduced by:
> 1. start a sheepdog cluster and create a volume 'test'*
> 2. attach 'test' to a bootable image like
> $ qemu -hda image -drive if=virtio,file=sheepdog:test
> 3. pkill sheep # create a half-closed situation
>
> I have straced it that QEMU is busy doing nonsense read/write() after
> select() in os_host_main_loop_wait(). I have no knowledge of
> glib_select_xxx, so someone please help fix it.
You mentioned a nonsense read(). What is the return value?
If you get a read with return value 0, this tells you the socket has
been closed. Can you handle these cases in block/sheepdog.c?
Stefan