From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Yang, Sheng" Subject: Re: [PATCH] kvm: device-assignment: Fix kvm_get_irq_route_gsi() return check Date: Wed, 13 May 2009 11:36:57 +0800 Message-ID: <200905131136.57555.sheng.yang@intel.com> References: <20090507170834.26367.91907.stgit@dl380g6-3.ned.telco.ned.telco> <20090512221144.5883.46470.stgit@dl380g6-3.ned.telco.ned.telco> Mime-Version: 1.0 Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: 7bit Cc: "kvm@vger.kernel.org" To: Alex Williamson Return-path: Received: from mga01.intel.com ([192.55.52.88]:63276 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752189AbZEMDgJ (ORCPT ); Tue, 12 May 2009 23:36:09 -0400 In-Reply-To: <20090512221144.5883.46470.stgit@dl380g6-3.ned.telco.ned.telco> Content-Disposition: inline Sender: kvm-owner@vger.kernel.org List-ID: On Wednesday 13 May 2009 06:14:01 Alex Williamson wrote: > Cast to a signed int to test for < 0. > > Signed-off-by: Alex Williamson > --- > > This supersedes "[PATCH] kvm: device-assignment: Catch GSI overflow" > > hw/device-assignment.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/hw/device-assignment.c b/hw/device-assignment.c > index a6cc9b9..5bdae24 100644 > --- a/hw/device-assignment.c > +++ b/hw/device-assignment.c > @@ -798,7 +798,7 @@ static void assigned_dev_update_msi(PCIDevice *pci_dev, > unsigned int ctrl_pos) pci_dev->cap.start + PCI_MSI_DATA_32); > assigned_dev->entry->type = KVM_IRQ_ROUTING_MSI; > assigned_dev->entry->gsi = kvm_get_irq_route_gsi(kvm_context); > - if (assigned_dev->entry->gsi < 0) { > + if ((int)(assigned_dev->entry->gsi) < 0) { > perror("assigned_dev_update_msi: kvm_get_irq_route_gsi"); > return; > } Use a return value(r) seems better. And I realized there is memory leak here. Entry seems haven't been freed for error... So does MSI-X... -- regards Yang, Sheng