On Friday, July 1, 2016 3:14:47 PM CEST Liviu Dudau wrote: > > I'm confused. Why are we butchering the old pci_alloc_host_bridge() function > to then go back and add re-add it in a different form? Good point, we could just keep the existing implementation and make it an exported function without the bus argument. > The old pci_alloc_host_bridge() was doing mostly what the above > function does minus the bridge->private line. And the &bridge[1] construct > could very well be pointing to the next struct pci_host_bridge aligned address, > which means parts of priv area are ignored. I don't know what you mean with that. Would you rather write this as? bridge->private = bridge + 1; or leave it out and add a helper function void *pci_host_bridge_private(struct pci_host_bridge *bridge) { return &bridge[1]; } or do you mean we should have extra alignment in there so the private pointer has a minimum alignment higher than the alignment of struct pci_host_bridge? I'm absolutely fine with any of those suggestions, whichever makes the nicest API. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html