> -----Original Message----- > From: Greg Kurz [mailto:gr...@kaod.org] > Sent: Thursday, September 22, 2016 3:22 PM > To: Gonglei (Arei) > Cc: qemu-devel@nongnu.org; Kevin Wolf; Michael S. Tsirkin; Jason Wang; Max > Reitz; Aneesh Kumar K.V; Stefan Hajnoczi; Cornelia Huck; Paolo Bonzini > Subject: Re: [Qemu-devel] [PATCH 0/7] virtio: avoid inappropriate QEMU > termination > > On Thu, 22 Sep 2016 06:55:43 +0000 > "Gonglei (Arei)" <arei.gong...@huawei.com> wrote: > > > > -----Original Message----- > > > From: Greg Kurz [mailto:gr...@kaod.org] > > > Sent: Thursday, September 22, 2016 2:43 PM > > > To: Gonglei (Arei) > > > Cc: qemu-devel@nongnu.org; Kevin Wolf; Michael S. Tsirkin; Jason Wang; > Max > > > Reitz; Aneesh Kumar K.V; Stefan Hajnoczi; Cornelia Huck; Paolo Bonzini > > > Subject: Re: [Qemu-devel] [PATCH 0/7] virtio: avoid inappropriate QEMU > > > termination > > > > > > On Thu, 22 Sep 2016 09:19:49 +0800 > > > Gonglei <arei.gong...@huawei.com> wrote: > > > > > > > On 2016/9/21 21:13, Greg Kurz wrote: > > > > > This series is a follow up to Stefan's work to eradicate most calls to > > > > > exit() we currently have in the virtio code. > > > > > > > > > > It addresses all exit() call sites in the blk, net and scsi device > > > > > code, > > > > > where the error is about a missing or malformed in/out header sent by > > > > > the guest. They are converted to use virtio_error() and stop any > processing, > > > > > instead of exiting. > > > > > > > > > Actually if you just stop procesing when encounter a missing in/out > > > > header > > > but > > > > send a interrupt to the guest, the guest maybe be stuck. > > > virtio_net_handle_ctrl() > > > > > > The virtio_error() function sets the device status to DEVICE_NEEDS_RESET > and > > > does send a device configuration change interrupt to the guest, so it can > take > > > appropriate action (i.e. reset the device). > > > > > That's appropriate. Where is realization of virtio_error() ? > > I'm sure I missed something. > > > > Sorry for that... Michael already "lectured" me about not providing these > details. He is right indeed :) > > > This is work in progress by Stefan. The latest version of the patchset (v5) > was > posted yesterday: > > <1474473146-19337-1-git-send-email-stefa...@redhat.com> > > The virtio_error() function itself is in patch 2/9: > > <1474473146-19337-3-git-send-email-stefa...@redhat.com> >
I see, thanks. Regards, -Gonglei