[{"id":1770842,"web_url":"http://patchwork.ozlabs.org/comment/1770842/","msgid":"<20170919075602.GS27153@umbus>","list_archive_url":null,"date":"2017-09-19T07:56:02","subject":"Re: [Qemu-devel] [RFC PATCH v2 15/21] spapr: modify\n\tspapr_populate_pci_dt() to use a 'nr_irqs' argument","submitter":{"id":47,"url":"http://patchwork.ozlabs.org/api/people/47/","name":"David Gibson","email":"david@gibson.dropbear.id.au"},"content":"On Mon, Sep 11, 2017 at 07:12:29PM +0200, Cédric Le Goater wrote:\n> This adds some flexibility in the definition of the number of\n> available IRQS used in a sPAPR machine.\n> \n> Signed-off-by: Cédric Le Goater <clg@kaod.org>\n\nThis doesn't seem sensible.  You've already stated that the XIVE and\nXICS need equivalent irq number spaces, so in particular they should\nhave the same number of irqs advertised.\n\n> ---\n>  hw/ppc/spapr.c              | 2 +-\n>  hw/ppc/spapr_pci.c          | 4 ++--\n>  include/hw/pci-host/spapr.h | 2 +-\n>  3 files changed, 4 insertions(+), 4 deletions(-)\n> \n> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c\n> index 3e3ff1fbc988..5d69df928434 100644\n> --- a/hw/ppc/spapr.c\n> +++ b/hw/ppc/spapr.c\n> @@ -1093,7 +1093,7 @@ static void *spapr_build_fdt(sPAPRMachineState *spapr,\n>      }\n>  \n>      QLIST_FOREACH(phb, &spapr->phbs, list) {\n> -        ret = spapr_populate_pci_dt(phb, PHANDLE_XICP, fdt);\n> +        ret = spapr_populate_pci_dt(phb, PHANDLE_XICP, fdt, XICS_IRQS_SPAPR);\n>          if (ret < 0) {\n>              error_report(\"couldn't setup PCI devices in fdt\");\n>              exit(1);\n> diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c\n> index d84abf1070a0..05b0a067458e 100644\n> --- a/hw/ppc/spapr_pci.c\n> +++ b/hw/ppc/spapr_pci.c\n> @@ -2073,7 +2073,7 @@ static void spapr_phb_pci_enumerate(sPAPRPHBState *phb)\n>  \n>  int spapr_populate_pci_dt(sPAPRPHBState *phb,\n>                            uint32_t xics_phandle,\n> -                          void *fdt)\n> +                          void *fdt, int nr_irqs)\n>  {\n>      int bus_off, i, j, ret;\n>      char nodename[FDT_NAME_MAX];\n> @@ -2142,7 +2142,7 @@ int spapr_populate_pci_dt(sPAPRPHBState *phb,\n>      _FDT(fdt_setprop(fdt, bus_off, \"ranges\", &ranges, sizeof_ranges));\n>      _FDT(fdt_setprop(fdt, bus_off, \"reg\", &bus_reg, sizeof(bus_reg)));\n>      _FDT(fdt_setprop_cell(fdt, bus_off, \"ibm,pci-config-space-type\", 0x1));\n> -    _FDT(fdt_setprop_cell(fdt, bus_off, \"ibm,pe-total-#msi\", XICS_IRQS_SPAPR));\n> +    _FDT(fdt_setprop_cell(fdt, bus_off, \"ibm,pe-total-#msi\", nr_irqs));\n>  \n>      /* Dynamic DMA window */\n>      if (phb->ddw_enabled) {\n> diff --git a/include/hw/pci-host/spapr.h b/include/hw/pci-host/spapr.h\n> index 38470b2f0e5c..40146f72c103 100644\n> --- a/include/hw/pci-host/spapr.h\n> +++ b/include/hw/pci-host/spapr.h\n> @@ -115,7 +115,7 @@ PCIHostState *spapr_create_phb(sPAPRMachineState *spapr, int index);\n>  \n>  int spapr_populate_pci_dt(sPAPRPHBState *phb,\n>                            uint32_t xics_phandle,\n> -                          void *fdt);\n> +                          void *fdt, int nr_irqs);\n>  \n>  void spapr_pci_rtas_init(void);\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>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=gibson.dropbear.id.au\n\theader.i=@gibson.dropbear.id.au header.b=\"elu/dmAw\"; \n\tdkim-atps=neutral"],"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 3xxKGV1vBLz9s82\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 19 Sep 2017 20:43:13 +1000 (AEST)","from localhost ([::1]:41383 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 1duFzj-0006EH-Pg\n\tfor incoming@patchwork.ozlabs.org; Tue, 19 Sep 2017 06:43:11 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:51266)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <dgibson@ozlabs.org>) id 1duFtY-0001H5-G5\n\tfor qemu-devel@nongnu.org; Tue, 19 Sep 2017 06:36:51 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <dgibson@ozlabs.org>) id 1duFtW-0002wU-2c\n\tfor qemu-devel@nongnu.org; Tue, 19 Sep 2017 06:36:48 -0400","from ozlabs.org ([2401:3900:2:1::2]:53807)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <dgibson@ozlabs.org>)\n\tid 1duFtV-0002rY-Kw; Tue, 19 Sep 2017 06:36:45 -0400","by ozlabs.org (Postfix, from userid 1007)\n\tid 3xxK6q4Wk9z9t45; Tue, 19 Sep 2017 20:36:34 +1000 (AEST)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n\td=gibson.dropbear.id.au; s=201602; t=1505817395;\n\tbh=NWqSlQ1pycy+77BUBAugWg602TDM2IFXqiCUtqS+Mbk=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=elu/dmAwED6ee9xd/4bbMHIDR9NFupAYtWwswIv+oTuKV132Jlpp3FjpSF2BIgglP\n\tq4MuTQtwDC6cEjzeTCdQoNs1CYEjeotUCDaf7BxsB+8SfSgfF1gMOKkVvKc7GZAOAj\n\tsmxWB/o1kKoZylcPxt3Ec9hd5em/Nwga1EFraoTQ=","Date":"Tue, 19 Sep 2017 17:56:02 +1000","From":"David Gibson <david@gibson.dropbear.id.au>","To":"=?iso-8859-1?q?C=E9dric?= Le Goater <clg@kaod.org>","Message-ID":"<20170919075602.GS27153@umbus>","References":"<20170911171235.29331-1-clg@kaod.org>\n\t<20170911171235.29331-16-clg@kaod.org>","MIME-Version":"1.0","Content-Type":"multipart/signed; micalg=pgp-sha256;\n\tprotocol=\"application/pgp-signature\"; boundary=\"CRjAHycgiaTQGSqU\"","Content-Disposition":"inline","In-Reply-To":"<20170911171235.29331-16-clg@kaod.org>","User-Agent":"Mutt/1.8.3 (2017-05-23)","X-detected-operating-system":"by eggs.gnu.org: Genre and OS details not\n\trecognized.","X-Received-From":"2401:3900:2:1::2","Subject":"Re: [Qemu-devel] [RFC PATCH v2 15/21] spapr: modify\n\tspapr_populate_pci_dt() to use a 'nr_irqs' argument","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":"Alexey Kardashevskiy <aik@ozlabs.ru>, qemu-ppc@nongnu.org,\n\tqemu-devel@nongnu.org, Alexander Graf <agraf@suse.de>","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":1771898,"web_url":"http://patchwork.ozlabs.org/comment/1771898/","msgid":"<5dc03703-2cde-1523-946a-b85edd286370@kaod.org>","list_archive_url":null,"date":"2017-09-20T09:49:56","subject":"Re: [Qemu-devel] [RFC PATCH v2 15/21] spapr: modify\n\tspapr_populate_pci_dt() to use a 'nr_irqs' argument","submitter":{"id":68548,"url":"http://patchwork.ozlabs.org/api/people/68548/","name":"Cédric Le Goater","email":"clg@kaod.org"},"content":"On 09/19/2017 09:56 AM, David Gibson wrote:\n> On Mon, Sep 11, 2017 at 07:12:29PM +0200, Cédric Le Goater wrote:\n>> This adds some flexibility in the definition of the number of\n>> available IRQS used in a sPAPR machine.\n>>\n>> Signed-off-by: Cédric Le Goater <clg@kaod.org>\n> \n> This doesn't seem sensible.  You've already stated that the XIVE and\n> XICS need equivalent irq number spaces, so in particular they should\n> have the same number of irqs advertised.\n\nyes. I am adding an argument to spapr_populate_pci_dt() \nbecause it is using the XICS_IRQS_SPAPR define directly \nand I intend to extend that number of irqs with the \nnumber of cpus to have room for IPIs.\n\nC. \n\n>> ---\n>>  hw/ppc/spapr.c              | 2 +-\n>>  hw/ppc/spapr_pci.c          | 4 ++--\n>>  include/hw/pci-host/spapr.h | 2 +-\n>>  3 files changed, 4 insertions(+), 4 deletions(-)\n>>\n>> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c\n>> index 3e3ff1fbc988..5d69df928434 100644\n>> --- a/hw/ppc/spapr.c\n>> +++ b/hw/ppc/spapr.c\n>> @@ -1093,7 +1093,7 @@ static void *spapr_build_fdt(sPAPRMachineState *spapr,\n>>      }\n>>  \n>>      QLIST_FOREACH(phb, &spapr->phbs, list) {\n>> -        ret = spapr_populate_pci_dt(phb, PHANDLE_XICP, fdt);\n>> +        ret = spapr_populate_pci_dt(phb, PHANDLE_XICP, fdt, XICS_IRQS_SPAPR);\n>>          if (ret < 0) {\n>>              error_report(\"couldn't setup PCI devices in fdt\");\n>>              exit(1);\n>> diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c\n>> index d84abf1070a0..05b0a067458e 100644\n>> --- a/hw/ppc/spapr_pci.c\n>> +++ b/hw/ppc/spapr_pci.c\n>> @@ -2073,7 +2073,7 @@ static void spapr_phb_pci_enumerate(sPAPRPHBState *phb)\n>>  \n>>  int spapr_populate_pci_dt(sPAPRPHBState *phb,\n>>                            uint32_t xics_phandle,\n>> -                          void *fdt)\n>> +                          void *fdt, int nr_irqs)\n>>  {\n>>      int bus_off, i, j, ret;\n>>      char nodename[FDT_NAME_MAX];\n>> @@ -2142,7 +2142,7 @@ int spapr_populate_pci_dt(sPAPRPHBState *phb,\n>>      _FDT(fdt_setprop(fdt, bus_off, \"ranges\", &ranges, sizeof_ranges));\n>>      _FDT(fdt_setprop(fdt, bus_off, \"reg\", &bus_reg, sizeof(bus_reg)));\n>>      _FDT(fdt_setprop_cell(fdt, bus_off, \"ibm,pci-config-space-type\", 0x1));\n>> -    _FDT(fdt_setprop_cell(fdt, bus_off, \"ibm,pe-total-#msi\", XICS_IRQS_SPAPR));\n>> +    _FDT(fdt_setprop_cell(fdt, bus_off, \"ibm,pe-total-#msi\", nr_irqs));\n>>  \n>>      /* Dynamic DMA window */\n>>      if (phb->ddw_enabled) {\n>> diff --git a/include/hw/pci-host/spapr.h b/include/hw/pci-host/spapr.h\n>> index 38470b2f0e5c..40146f72c103 100644\n>> --- a/include/hw/pci-host/spapr.h\n>> +++ b/include/hw/pci-host/spapr.h\n>> @@ -115,7 +115,7 @@ PCIHostState *spapr_create_phb(sPAPRMachineState *spapr, int index);\n>>  \n>>  int spapr_populate_pci_dt(sPAPRPHBState *phb,\n>>                            uint32_t xics_phandle,\n>> -                          void *fdt);\n>> +                          void *fdt, int nr_irqs);\n>>  \n>>  void spapr_pci_rtas_init(void);\n>>  \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>)","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 3xy1nZ163Qz9s82\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 21 Sep 2017 00:09:06 +1000 (AEST)","from localhost ([::1]:48316 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 1dufgW-0005oI-5i\n\tfor incoming@patchwork.ozlabs.org; Wed, 20 Sep 2017 10:09:04 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:36027)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <clg@kaod.org>) id 1duf1S-0002Vx-DJ\n\tfor qemu-devel@nongnu.org; Wed, 20 Sep 2017 09:27:06 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <clg@kaod.org>) id 1duf0n-0003jh-5P\n\tfor qemu-devel@nongnu.org; Wed, 20 Sep 2017 09:26:38 -0400","from 6.mo2.mail-out.ovh.net ([87.98.165.38]:44794)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <clg@kaod.org>) id 1duf0m-0003ij-Vl\n\tfor qemu-devel@nongnu.org; Wed, 20 Sep 2017 09:25:57 -0400","from player157.ha.ovh.net (b9.ovh.net [213.186.33.59])\n\tby mo2.mail-out.ovh.net (Postfix) with ESMTP id 0602EACAFB\n\tfor <qemu-devel@nongnu.org>; Wed, 20 Sep 2017 11:50:09 +0200 (CEST)","from zorba.kaod.org (LFbn-1-2231-173.w90-76.abo.wanadoo.fr\n\t[90.76.52.173]) (Authenticated sender: postmaster@kaod.org)\n\tby player157.ha.ovh.net (Postfix) with ESMTPSA id 844235000AE;\n\tWed, 20 Sep 2017 11:50:04 +0200 (CEST)"],"To":"David Gibson <david@gibson.dropbear.id.au>","References":"<20170911171235.29331-1-clg@kaod.org>\n\t<20170911171235.29331-16-clg@kaod.org> <20170919075602.GS27153@umbus>","From":"=?utf-8?q?C=C3=A9dric_Le_Goater?= <clg@kaod.org>","Message-ID":"<5dc03703-2cde-1523-946a-b85edd286370@kaod.org>","Date":"Wed, 20 Sep 2017 11:49:56 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170919075602.GS27153@umbus>","Content-Type":"text/plain; charset=windows-1252","Content-Language":"en-US","X-Ovh-Tracer-Id":"4166111134053272440","X-VR-SPAMSTATE":"OK","X-VR-SPAMSCORE":"-100","X-VR-SPAMCAUSE":"gggruggvucftvghtrhhoucdtuddrfeelledrheelgddvudcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfqggfjpdevjffgvefmvefgnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd","Content-Transfer-Encoding":"quoted-printable","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"87.98.165.38","Subject":"Re: [Qemu-devel] [RFC PATCH v2 15/21] spapr: modify\n\tspapr_populate_pci_dt() to use a 'nr_irqs' argument","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":"Alexey Kardashevskiy <aik@ozlabs.ru>, qemu-ppc@nongnu.org,\n\tqemu-devel@nongnu.org, Alexander Graf <agraf@suse.de>","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>"}}]