From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ken CC Subject: [PATCH 2/3] pci init: fail qemu if devfn exceeding the max devices number supported on bus Date: Tue, 24 Aug 2010 14:48:41 +0800 Message-ID: <20100824064841.GA11495@kt> References: <20100824063307.GA10815@kt> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: yamahata@valinux.co.jp, qemu-devel@nongnu.org To: kvm@vger.kernel.org Return-path: Received: from mail-qy0-f181.google.com ([209.85.216.181]:34334 "EHLO mail-qy0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753539Ab0HXGsr (ORCPT ); Tue, 24 Aug 2010 02:48:47 -0400 Received: by qyk33 with SMTP id 33so6154191qyk.19 for ; Mon, 23 Aug 2010 23:48:47 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20100824063307.GA10815@kt> Sender: kvm-owner@vger.kernel.org List-ID: assert(devfn < PCIBUS_MAX_DEVICES) Signed-off-by: Ken CC --- hw/pci.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/hw/pci.c b/hw/pci.c index 02019a1..1e804da 100644 --- a/hw/pci.c +++ b/hw/pci.c @@ -747,6 +747,7 @@ static PCIDevice *do_pci_register_device(PCIDevice *pci_dev, PCIBus *bus, PCIConfigWriteFunc *config_write, bool is_bridge) { + assert(devfn < PCIBUS_MAX_DEVICES); if (devfn < 0) { for(devfn = bus->devfn_min ; devfn < ARRAY_SIZE(bus->devices); devfn += PCI_FUNC_MAX) { From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=45403 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OnnJj-0002SC-IT for qemu-devel@nongnu.org; Tue, 24 Aug 2010 02:49:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OnnJP-0004o9-UU for qemu-devel@nongnu.org; Tue, 24 Aug 2010 02:48:48 -0400 Received: from mail-qw0-f45.google.com ([209.85.216.45]:50697) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OnnJP-0004nz-SK for qemu-devel@nongnu.org; Tue, 24 Aug 2010 02:48:47 -0400 Received: by qwh5 with SMTP id 5so5948225qwh.4 for ; Mon, 23 Aug 2010 23:48:47 -0700 (PDT) Date: Tue, 24 Aug 2010 14:48:41 +0800 From: Ken CC Message-ID: <20100824064841.GA11495@kt> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100824063307.GA10815@kt> Subject: [Qemu-devel] [PATCH 2/3] pci init: fail qemu if devfn exceeding the max devices number supported on bus List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: kvm@vger.kernel.org Cc: yamahata@valinux.co.jp, qemu-devel@nongnu.org assert(devfn < PCIBUS_MAX_DEVICES) Signed-off-by: Ken CC --- hw/pci.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/hw/pci.c b/hw/pci.c index 02019a1..1e804da 100644 --- a/hw/pci.c +++ b/hw/pci.c @@ -747,6 +747,7 @@ static PCIDevice *do_pci_register_device(PCIDevice *pci_dev, PCIBus *bus, PCIConfigWriteFunc *config_write, bool is_bridge) { + assert(devfn < PCIBUS_MAX_DEVICES); if (devfn < 0) { for(devfn = bus->devfn_min ; devfn < ARRAY_SIZE(bus->devices); devfn += PCI_FUNC_MAX) {