From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50314) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XK7Kc-0004eX-CK for qemu-devel@nongnu.org; Wed, 20 Aug 2014 10:57:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XK7KV-0005iE-RV for qemu-devel@nongnu.org; Wed, 20 Aug 2014 10:57:46 -0400 Received: from mx1.redhat.com ([209.132.183.28]:31006) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XK7KV-0005iA-JS for qemu-devel@nongnu.org; Wed, 20 Aug 2014 10:57:39 -0400 From: Markus Armbruster References: <1408517593.25437.102.camel@ori.omang.mine.nu> <53F461E6.5020506@redhat.com> <1408527055.14053.107.camel@abi.no.oracle.com> <20140820113627.GG17371@redhat.com> <53F4A082.7090103@redhat.com> Date: Wed, 20 Aug 2014 16:57:27 +0200 In-Reply-To: <53F4A082.7090103@redhat.com> (Paolo Bonzini's message of "Wed, 20 Aug 2014 15:20:02 +0200") Message-ID: <87sikrus2w.fsf@blackfin.pond.sub.org> MIME-Version: 1.0 Content-Type: text/plain Subject: Re: [Qemu-devel] [PATCH 2/3] ioh3420: Provide a unique bus name and an interrupt mapping function List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Marcel Apfelbaum , Alexey Kardashevskiy , Juan Quintela , Knut Omang , qemu-devel@nongnu.org, Gonglei , "Michael S. Tsirkin" , Igor Mammedov Paolo Bonzini writes: > Il 20/08/2014 13:36, Michael S. Tsirkin ha scritto: >> >> For pci bridges, unless you set bus_name, bus name will >> match device itself. See this code: >> >> * If we don't specify the name, the bus will be addressed as >> * .0, where id is the device id. >> * Since PCI Bridge devices have a single bus each, we don't need >> * the index: >> * let users address the bus using the device name. >> */ >> if (!br->bus_name && dev->qdev.id && *dev->qdev.id) { >> br->bus_name = dev->qdev.id; >> } > > Is libvirt using this rule? If not, I'd rather slash it since the > .0 name is shared with all other buses and not PCI-bridge-specific. br->bus_name is null unless pci_bridge_map_irq() set it. Only caller for ioh3420 is ioh3420_init(), and that's dead code. Therefore, br->bus_name is null here. Libvirt always sets a device ID. Slashing this this special case would change the bus name from ID.0 to just ID. That'll break libvirt, as far as I can tell from its source. Sad.