Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754725AbbFKQR7 (ORCPT ); Thu, 11 Jun 2015 12:17:59 -0400 Received: from foss.arm.com ([217.140.101.70]:56797 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752646AbbFKQR5 (ORCPT ); Thu, 11 Jun 2015 12:17:57 -0400 Date: Thu, 11 Jun 2015 17:18:08 +0100 From: Lorenzo Pieralisi To: Jiang Liu Cc: "Rafael J . Wysocki" , Bjorn Helgaas , Marc Zyngier , "hanjun.guo@linaro.org" , Liviu Dudau , Yijing Wang , Len Brown , Lv Zheng , LKML , "linux-pci@vger.kernel.org" , "linux-acpi@vger.kernel.org" , "x86 @ kernel . org" , "linux-arm-kernel@lists.infradead.org" Subject: Re: [Patch v5 4/6] PCI/ACPI: Consolidate common PCI host bridge code into ACPI core Message-ID: <20150611161808.GE23914@red-moon> References: <1433780448-18636-1-git-send-email-jiang.liu@linux.intel.com> <1433780448-18636-5-git-send-email-jiang.liu@linux.intel.com> <20150609161230.GC8591@red-moon> <55771B27.1060509@linux.intel.com> <20150610164821.GA18832@red-moon> <55787191.6060400@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <55787191.6060400@linux.intel.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2292 Lines: 56 Hi Gerry, On Wed, Jun 10, 2015 at 06:19:13PM +0100, Jiang Liu wrote: > On 2015/6/11 0:48, Lorenzo Pieralisi wrote: > > On Tue, Jun 09, 2015 at 05:58:15PM +0100, Jiang Liu wrote: > >> On 2015/6/10 0:12, Lorenzo Pieralisi wrote: > > > > [...] > > > >>>> +struct pci_bus *acpi_pci_root_create(struct acpi_pci_root *root, > >>>> + struct acpi_pci_root_ops *ops, > >>>> + struct acpi_pci_root_info *info, > >>>> + void *sysdata, int segment, int node) > >>> > >>> I do not think you need to pass segment and node, they clutter the > >>> function signature when you can retrieve them from root, I would > >>> make them local variables and use root->segment and acpi_get_node > >>> in the function body to retrieve them. > >> On x86, node and segment may be overridden under certain conditions. > >> For example, segment will always be 0 if 'pci_ignore_seg' is set. > > > > Ok, so the question would be then why do you not override the value > > in root->segment then (actually, is it *correct* to leave the segment > > value in root-> unchanged even if it is overriden) ? > > > > Anyway, node is just used for a printk, why do not you add segment and > > node to acpi_pci_root_info ? Just cosmetic stuff, trying to help you > > simplify the code, it is not easy to parse. > Hi Lorenzo, > I used the complex prototype to explicitly reminder callers > that you need to prepare all these information. If simpler interface > is preferred, we could pack all ops, sysdata, segment, node, root > into info, that there's will be only one parameter "info" left. > The drawback is that it will add several lines of code to each arch > using this interface. So prefer simpler interface or less lines of code?:) I was just referring to segment and node parameters, I think that having them in the parameters list is overkill and they can be encapsulated. With the changes discussed previously feel free to add my: Reviewed-by: Lorenzo Pieralisi > Thanks! > Gerry > > > > > Thanks, > > Lorenzo > > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/