Thread (20 messages) 20 messages, 4 authors, 2015-09-09

[Patch v5 4/6] PCI/ACPI: Consolidate common PCI host bridge code into ACPI core

From: Jiang Liu <hidden>
Date: 2015-06-10 17:19:25
Also in: linux-acpi, linux-pci, lkml

On 2015/6/11 0:48, Lorenzo Pieralisi wrote:
On Tue, Jun 09, 2015 at 05:58:15PM +0100, Jiang Liu wrote:
quoted
On 2015/6/10 0:12, Lorenzo Pieralisi wrote:
[...]
quoted
quoted
quoted
+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?:)
Thanks!
Gerry
Thanks,
Lorenzo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help