From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:60382) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvRwJ-00043Q-Mt for qemu-devel@nongnu.org; Wed, 16 Jan 2013 07:17:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TvRwI-0007kF-98 for qemu-devel@nongnu.org; Wed, 16 Jan 2013 07:17:55 -0500 Received: from [222.73.24.84] (port=57359 helo=song.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvP1g-0002mZ-An for qemu-devel@nongnu.org; Wed, 16 Jan 2013 04:11:16 -0500 Message-ID: <50F66EB0.6000207@cn.fujitsu.com> Date: Wed, 16 Jan 2013 17:11:12 +0800 From: Wanlong Gao MIME-Version: 1.0 References: <20130115174238.GA9798@redhat.com> In-Reply-To: <20130115174238.GA9798@redhat.com> Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [Qemu-devel] [PATCH] virtio-pci: fix irqfd cleanup argument order Reply-To: gaowanlong@cn.fujitsu.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Paolo Bonzini , Anthony Liguori , Laszlo Ersek , qemu-devel@nongnu.org, Stefan Hajnoczi On 01/16/2013 01:42 AM, Michael S. Tsirkin wrote: > Order of arguments of kvm_virtio_pci_irqfd_release > got mixed up in all calls. > As a result users see assertions during cleanup. > > Reported-by: Laszlo Ersek > Signed-off-by: Michael S. Tsirkin Thank you, fixed my assertion here: hw/virtio-pci.c:535: kvm_virtio_pci_irqfd_release: Assertion `ret == 0' failed. Tested-by: Wanlong Gao > --- > > hw/virtio-pci.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c > index 0934246..212acd8 100644 > --- a/hw/virtio-pci.c > +++ b/hw/virtio-pci.c > @@ -576,7 +576,7 @@ undo: > continue; > } > if (proxy->vdev->guest_notifier_mask) { > - kvm_virtio_pci_irqfd_release(proxy, vector, queue_no); > + kvm_virtio_pci_irqfd_release(proxy, queue_no, vector); > } > kvm_virtio_pci_vq_vector_release(proxy, vector); > } > @@ -602,7 +602,7 @@ static void kvm_virtio_pci_vector_release(VirtIOPCIProxy *proxy, int nvqs) > * Otherwise, it was cleaned when masked in the frontend. > */ > if (proxy->vdev->guest_notifier_mask) { > - kvm_virtio_pci_irqfd_release(proxy, vector, queue_no); > + kvm_virtio_pci_irqfd_release(proxy, queue_no, vector); > } > kvm_virtio_pci_vq_vector_release(proxy, vector); > } > @@ -651,7 +651,7 @@ static void kvm_virtio_pci_vq_vector_mask(VirtIOPCIProxy *proxy, > if (proxy->vdev->guest_notifier_mask) { > proxy->vdev->guest_notifier_mask(proxy->vdev, queue_no, true); > } else { > - kvm_virtio_pci_irqfd_release(proxy, vector, queue_no); > + kvm_virtio_pci_irqfd_release(proxy, queue_no, vector); > } > } > >