From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gleb Natapov Subject: Re: [PATCHv2 7/8] Change pci bus get_dev_path callback to print only slot and func Date: Mon, 8 Nov 2010 20:22:53 +0200 Message-ID: <20101108182253.GD19863@redhat.com> References: <1288525209-3303-1-git-send-email-gleb@redhat.com> <1288525209-3303-8-git-send-email-gleb@redhat.com> <20101108171737.GA8498@redhat.com> <20101108172950.GB19863@redhat.com> <20101108181255.GD8498@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, blauwirbel@gmail.com, armbru@redhat.com, alex.williamson@redhat.com To: "Michael S. Tsirkin" Return-path: Received: from mx1.redhat.com ([209.132.183.28]:1029 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753834Ab0KHSW6 (ORCPT ); Mon, 8 Nov 2010 13:22:58 -0500 Content-Disposition: inline In-Reply-To: <20101108181255.GD8498@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On Mon, Nov 08, 2010 at 08:12:55PM +0200, Michael S. Tsirkin wrote: > On Mon, Nov 08, 2010 at 07:29:50PM +0200, Gleb Natapov wrote: > > On Mon, Nov 08, 2010 at 07:17:37PM +0200, Michael S. Tsirkin wrote: > > > On Sun, Oct 31, 2010 at 01:40:08PM +0200, Gleb Natapov wrote: > > > > Domain should be determined form parent bus and bus number is configured > > > > by guest and should not be used in qemu internally. > > > > > > > > Signed-off-by: Gleb Natapov > > > > --- > > > > hw/pci.c | 11 ++++++----- > > > > 1 files changed, 6 insertions(+), 5 deletions(-) > > > > > > > > diff --git a/hw/pci.c b/hw/pci.c > > > > index 92aaa85..1c5706f 100644 > > > > --- a/hw/pci.c > > > > +++ b/hw/pci.c > > > > @@ -2138,12 +2138,13 @@ static void pcibus_dev_print(Monitor *mon, DeviceState *dev, int indent) > > > > static char *pcibus_get_dev_path(DeviceState *dev) > > > > { > > > > PCIDevice *d = (PCIDevice *)dev; > > > > - char path[16]; > > > > - > > > > - snprintf(path, sizeof(path), "%04x:%02x:%02x.%x", > > > > - pci_find_domain(d->bus), d->config[PCI_SECONDARY_BUS], > > > > - PCI_SLOT(d->devfn), PCI_FUNC(d->devfn)); > > > > + char path[50]; > > > > + int off; > > > > > > > > + off = snprintf(path, sizeof(path), "%s@%x", qdev_driver_name(dev), > > > > + PCI_SLOT(d->devfn)); > > > > + if (PCI_FUNC(d->devfn)) > > > > + snprintf(path + off, sizeof(path) + off, ",%x", PCI_FUNC(d->devfn)); > > > > return strdup(path); > > > > } > > > > > > Can we change separators to be : and . instead of @ and , please? > > No. I am implementing well defined Open Firmware device path. Lets stop > > reinventing things wrongly please? > > > > > This will make it compatible with existing code and generally > > > what users expect. > > > > > It will drop domain and bus number part anyway. > > Yes but most users at the moment have domain and bus 0 only. > So even simply adding 0000:00 prefix will work. > Are we trying to build device path or do bunch of hacks? We already have hack now. Why change anything at all? PPC Macs (G500) had 3 pci buses. -- Gleb.