[{"id":1776917,"web_url":"http://patchwork.ozlabs.org/comment/1776917/","msgid":"<560aa8ff-c87d-78a3-9d94-b32df6b27834@redhat.com>","list_archive_url":null,"date":"2017-09-28T09:39:23","subject":"Re: [Qemu-devel] [PATCH v2 0/5] Mark conventional/PCIe/hybrid PCI\n\tdevices using interface names","submitter":{"id":65362,"url":"http://patchwork.ozlabs.org/api/people/65362/","name":"Marcel Apfelbaum","email":"marcel@redhat.com"},"content":"On 27/09/2017 22:56, Eduardo Habkost wrote:\n> Changes v1 -> v2:\n> * Use \"Conventional PCI\" instead of \"legacy PCI\"\n>    * Suggested-by: Alex Williamson <alex.williamson@redhat.com>\n> * Mark base-xhci as hybrid too\n>    * Reported-by: Marcel Apfelbaum <marcel@redhat.com>\n> * Mark pcie-pci-bridge as PCI Express only\n> * New Conventional PCI devices: sungem, sunhme\n> \n> v1 was a reimplementation of one portion of an old RFC:\n>    Subject: [RFC v2 00/20] qmp: Report bus information on\n>             'query-machines'\n> \n> This series marks each PCI device type as Conventional PCI, PCI\n> Express, or \"hybrid\".  It uses two new QOM interface names to do\n> that: INTERFACE_CONVENTIONAL_PCI_DEVICE\n> (\"conventional-pci-device\") and INTERFACE_PCIE_DEVICE\n> (\"pci-express-device\").  Conventional PCI devices will implement\n> only the former; PCIe-only devices will implement only the\n> latter; hybrid devices will implement both interfaces.\n> \n> With this, management software will then be able to use\n> qom-list-types to find out which PCI devices are\n> conventional/express/hybrid.\n> \n> In the future, the new interface names can be used in the\n> bus/slot querying commands, to indicate which types of devices\n> are accepted on each slot.\n> \n> The last patch in the series adds an assertion to the PCI device\n> class code, to ensure we won't forget to add the corresponding\n> interface names to new PCI device classes.\n> \n\nHi Eduardo,\n\nNow we need to get rid of the \"is_express\" field,\notherwise we have the same information on two places.\n\nThanks,\nMarcel\n\n> Eduardo Habkost (5):\n>    pci: conventional-pci-device and pci-express-device interfaces\n>    pci: Add interface names to hybrid PCI devices\n>    pci: Add INTERFACE_PCIE_DEVICE to all PCIe devices\n>    pci: Add INTERFACE_CONVENTIONAL_PCI_DEVICE to Conventional PCI devices\n>    pci: Validate interfaces on base_class_init\n> \n>   include/hw/pci/pci.h                |  6 ++++++\n>   hw/acpi/piix4.c                     |  1 +\n>   hw/audio/ac97.c                     |  4 ++++\n>   hw/audio/es1370.c                   |  4 ++++\n>   hw/audio/intel-hda.c                |  4 ++++\n>   hw/block/nvme.c                     |  4 ++++\n>   hw/char/serial-pci.c                | 12 ++++++++++++\n>   hw/display/cirrus_vga.c             |  4 ++++\n>   hw/display/qxl.c                    |  4 ++++\n>   hw/display/sm501.c                  |  4 ++++\n>   hw/display/vga-pci.c                |  4 ++++\n>   hw/display/vmware_vga.c             |  4 ++++\n>   hw/i2c/smbus_ich9.c                 |  4 ++++\n>   hw/i386/amd_iommu.c                 |  4 ++++\n>   hw/i386/kvm/pci-assign.c            |  4 ++++\n>   hw/i386/pc_piix.c                   |  4 ++++\n>   hw/i386/xen/xen_platform.c          |  4 ++++\n>   hw/i386/xen/xen_pvdevice.c          |  4 ++++\n>   hw/ide/ich.c                        |  4 ++++\n>   hw/ide/pci.c                        |  4 ++++\n>   hw/ipack/tpci200.c                  |  4 ++++\n>   hw/isa/i82378.c                     |  4 ++++\n>   hw/isa/lpc_ich9.c                   |  1 +\n>   hw/isa/piix4.c                      |  4 ++++\n>   hw/isa/vt82c686.c                   | 16 ++++++++++++++++\n>   hw/mips/gt64xxx_pci.c               |  4 ++++\n>   hw/misc/edu.c                       |  5 +++++\n>   hw/misc/ivshmem.c                   |  4 ++++\n>   hw/misc/macio/macio.c               |  4 ++++\n>   hw/misc/pci-testdev.c               |  4 ++++\n>   hw/net/e1000.c                      |  4 ++++\n>   hw/net/e1000e.c                     |  4 ++++\n>   hw/net/eepro100.c                   |  4 ++++\n>   hw/net/ne2000.c                     |  4 ++++\n>   hw/net/pcnet-pci.c                  |  4 ++++\n>   hw/net/rocker/rocker.c              |  4 ++++\n>   hw/net/rtl8139.c                    |  4 ++++\n>   hw/net/sungem.c                     |  4 ++++\n>   hw/net/sunhme.c                     |  4 ++++\n>   hw/net/vmxnet3.c                    |  5 +++++\n>   hw/pci-bridge/dec.c                 |  8 ++++++++\n>   hw/pci-bridge/i82801b11.c           |  4 ++++\n>   hw/pci-bridge/pci_bridge_dev.c      |  1 +\n>   hw/pci-bridge/pci_expander_bridge.c |  8 ++++++++\n>   hw/pci-bridge/pcie_pci_bridge.c     |  1 +\n>   hw/pci-bridge/pcie_root_port.c      |  4 ++++\n>   hw/pci-bridge/xio3130_downstream.c  |  4 ++++\n>   hw/pci-bridge/xio3130_upstream.c    |  4 ++++\n>   hw/pci-host/apb.c                   |  8 ++++++++\n>   hw/pci-host/bonito.c                |  4 ++++\n>   hw/pci-host/gpex.c                  |  4 ++++\n>   hw/pci-host/grackle.c               |  4 ++++\n>   hw/pci-host/piix.c                  |  8 ++++++++\n>   hw/pci-host/ppce500.c               |  4 ++++\n>   hw/pci-host/prep.c                  |  4 ++++\n>   hw/pci-host/q35.c                   |  4 ++++\n>   hw/pci-host/uninorth.c              | 16 ++++++++++++++++\n>   hw/pci-host/versatile.c             |  4 ++++\n>   hw/pci-host/xilinx-pcie.c           |  4 ++++\n>   hw/pci/pci.c                        | 24 ++++++++++++++++++++++++\n>   hw/ppc/ppc4xx_pci.c                 |  4 ++++\n>   hw/scsi/esp-pci.c                   |  4 ++++\n>   hw/scsi/lsi53c895a.c                |  4 ++++\n>   hw/scsi/megasas.c                   | 10 ++++++++++\n>   hw/scsi/mptsas.c                    |  4 ++++\n>   hw/scsi/vmw_pvscsi.c                |  2 ++\n>   hw/sd/sdhci.c                       |  4 ++++\n>   hw/sh4/sh_pci.c                     |  4 ++++\n>   hw/sparc64/sun4u.c                  |  4 ++++\n>   hw/usb/hcd-ehci-pci.c               |  4 ++++\n>   hw/usb/hcd-ohci.c                   |  4 ++++\n>   hw/usb/hcd-uhci.c                   |  4 ++++\n>   hw/usb/hcd-xhci.c                   |  5 +++++\n>   hw/vfio/pci-quirks.c                |  4 ++++\n>   hw/vfio/pci.c                       |  5 +++++\n>   hw/virtio/virtio-pci.c              |  5 +++++\n>   hw/watchdog/wdt_i6300esb.c          |  4 ++++\n>   hw/xen/xen_pt.c                     |  4 ++++\n>   78 files changed, 379 insertions(+)\n>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx07.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx07.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=marcel@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y2qRb6Gvrz9t3m\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 19:40:11 +1000 (AEST)","from localhost ([::1]:58198 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dxVIf-00067t-VH\n\tfor incoming@patchwork.ozlabs.org; Thu, 28 Sep 2017 05:40:10 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:36750)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <marcel@redhat.com>) id 1dxVIC-00067m-Or\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 05:39:42 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <marcel@redhat.com>) id 1dxVI8-00042J-Kw\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 05:39:40 -0400","from mx1.redhat.com ([209.132.183.28]:34614)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <marcel@redhat.com>) id 1dxVI8-000422-B1\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 05:39:36 -0400","from smtp.corp.redhat.com\n\t(int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 30EDAC118913;\n\tThu, 28 Sep 2017 09:39:35 +0000 (UTC)","from mapfelba-osx.local (unknown [10.35.206.52])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id E3BDE51893;\n\tThu, 28 Sep 2017 09:39:25 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 30EDAC118913","To":"Eduardo Habkost <ehabkost@redhat.com>, qemu-devel@nongnu.org","References":"<20170927195635.16014-1-ehabkost@redhat.com>","From":"Marcel Apfelbaum <marcel@redhat.com>","Message-ID":"<560aa8ff-c87d-78a3-9d94-b32df6b27834@redhat.com>","Date":"Thu, 28 Sep 2017 12:39:23 +0300","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0)\n\tGecko/20100101 Thunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170927195635.16014-1-ehabkost@redhat.com>","Content-Type":"text/plain; charset=utf-8; format=flowed","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.16","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.31]);\n\tThu, 28 Sep 2017 09:39:35 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH v2 0/5] Mark conventional/PCIe/hybrid PCI\n\tdevices using interface names","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"David Gibson <dgibson@redhat.com>,\n\tAlex Williamson <alex.williamson@redhat.com>,\n\t\"Michael S. Tsirkin\" <mst@redhat.com>, Laine Stump <laine@redhat.com>,\n\tAlistair Francis <alistair23@gmail.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1777024,"web_url":"http://patchwork.ozlabs.org/comment/1777024/","msgid":"<20170928131531.GQ4115@localhost.localdomain>","list_archive_url":null,"date":"2017-09-28T13:15:31","subject":"Re: [Qemu-devel] [PATCH v2 0/5] Mark conventional/PCIe/hybrid PCI\n\tdevices using interface names","submitter":{"id":195,"url":"http://patchwork.ozlabs.org/api/people/195/","name":"Eduardo Habkost","email":"ehabkost@redhat.com"},"content":"On Thu, Sep 28, 2017 at 12:39:23PM +0300, Marcel Apfelbaum wrote:\n> On 27/09/2017 22:56, Eduardo Habkost wrote:\n> > Changes v1 -> v2:\n> > * Use \"Conventional PCI\" instead of \"legacy PCI\"\n> >    * Suggested-by: Alex Williamson <alex.williamson@redhat.com>\n> > * Mark base-xhci as hybrid too\n> >    * Reported-by: Marcel Apfelbaum <marcel@redhat.com>\n> > * Mark pcie-pci-bridge as PCI Express only\n> > * New Conventional PCI devices: sungem, sunhme\n> > \n> > v1 was a reimplementation of one portion of an old RFC:\n> >    Subject: [RFC v2 00/20] qmp: Report bus information on\n> >             'query-machines'\n> > \n> > This series marks each PCI device type as Conventional PCI, PCI\n> > Express, or \"hybrid\".  It uses two new QOM interface names to do\n> > that: INTERFACE_CONVENTIONAL_PCI_DEVICE\n> > (\"conventional-pci-device\") and INTERFACE_PCIE_DEVICE\n> > (\"pci-express-device\").  Conventional PCI devices will implement\n> > only the former; PCIe-only devices will implement only the\n> > latter; hybrid devices will implement both interfaces.\n> > \n> > With this, management software will then be able to use\n> > qom-list-types to find out which PCI devices are\n> > conventional/express/hybrid.\n> > \n> > In the future, the new interface names can be used in the\n> > bus/slot querying commands, to indicate which types of devices\n> > are accepted on each slot.\n> > \n> > The last patch in the series adds an assertion to the PCI device\n> > class code, to ensure we won't forget to add the corresponding\n> > interface names to new PCI device classes.\n> > \n> \n> Hi Eduardo,\n> \n> Now we need to get rid of the \"is_express\" field,\n> otherwise we have the same information on two places.\n\nAgreed, it's on my TODO-list.  is_express is completely\ninconsistent on hybrid devices (some of them have is_express=0,\nsome of them have is_express=1).","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx10.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx10.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=ehabkost@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y2wF55RgRz9tXd\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 23:16:25 +1000 (AEST)","from localhost ([::1]:59226 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dxYfv-0007wI-Mt\n\tfor incoming@patchwork.ozlabs.org; Thu, 28 Sep 2017 09:16:23 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:33707)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <ehabkost@redhat.com>) id 1dxYfY-0007wC-V1\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 09:16:01 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <ehabkost@redhat.com>) id 1dxYfS-0005I5-Uy\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 09:16:00 -0400","from mx1.redhat.com ([209.132.183.28]:32976)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <ehabkost@redhat.com>) id 1dxYfS-0005HY-Hz\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 09:15:54 -0400","from smtp.corp.redhat.com\n\t(int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 9EC0919C450;\n\tThu, 28 Sep 2017 13:15:53 +0000 (UTC)","from localhost (ovpn-116-3.gru2.redhat.com [10.97.116.3])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id 21A047FE93;\n\tThu, 28 Sep 2017 13:15:32 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 9EC0919C450","Date":"Thu, 28 Sep 2017 10:15:31 -0300","From":"Eduardo Habkost <ehabkost@redhat.com>","To":"Marcel Apfelbaum <marcel@redhat.com>","Message-ID":"<20170928131531.GQ4115@localhost.localdomain>","References":"<20170927195635.16014-1-ehabkost@redhat.com>\n\t<560aa8ff-c87d-78a3-9d94-b32df6b27834@redhat.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<560aa8ff-c87d-78a3-9d94-b32df6b27834@redhat.com>","X-Fnord":"you can see the fnord","User-Agent":"Mutt/1.8.3 (2017-05-23)","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.15","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.39]);\n\tThu, 28 Sep 2017 13:15:53 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH v2 0/5] Mark conventional/PCIe/hybrid PCI\n\tdevices using interface names","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"\"Michael S. Tsirkin\" <mst@redhat.com>, qemu-devel@nongnu.org,\n\tAlex Williamson <alex.williamson@redhat.com>,\n\tLaine Stump <laine@redhat.com>, Alistair Francis <alistair23@gmail.com>, \n\tDavid Gibson <dgibson@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}}]