On Wed, Jun 10, 2015 at 12:58:15AM +0800, Jiang Liu wrote: > On 2015/6/10 0:12, Lorenzo Pieralisi wrote: > > On Mon, Jun 08, 2015 at 05:20:46PM +0100, Jiang Liu 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. I agree we should drop the segment and node parameters. Having the information in two places means we can make a mistake, and we can easily avoid that possibility by only keeping it in one place. I think it is a bug that we don't set root->segment to zero when we have pci_ignore_seg. Sorry, that's my fault from 1f09b09b4de0 ("x86/PCI: Ignore _SEG on HP xw9300"). I don't understand the issue about overriding the node number. Can you explain it? -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html