Re: [PATCH 08/28] PCI: Introduce pci_host_assign_domain_nr() to assign domain

Arnd Bergmann
2015-01-19T09:50:30Z

On Monday 19 January 2015 10:14:44 Yijing Wang wrote:
> >> I'm confused: the same code is already part of the PCI tree, but with
> >> Lorenzo Pieralisi listed as the patch author. The code is good,
> >> and I acked it in the past, but one of you is (probably by accident)
> >> misattributing the patch.
> >>
> >> Assuming that the patch that is already merged in next is the right
> >> one, I think you should rebase your series on top of
> >>
> >> git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git#next
> >>
> >> to avoid conflicts like this one.
> >>
> >
> > I think I just got confused because the code duplicates most of
> > pci_bus_assign_domain_nr(). Maybe this can be done in a better way
> > by splitting the existing function into
> >
> > static int pci_assign_domain_nr(struct device *)
> > {
> > ... /* most of pci_bus_assign_domain_nr */
> >
> > return domain;
> > }
> >
> > void pci_host_assign_domain_nr(struct pci_host_bridge *host)
> > {
> > host->domain = pci_assign_domain_nr(host->dev.parent);
> > }
> >
> > void pci_bus_assign_domain_nr(struct pci_bus *bus, struct device *parent)
> > {
> > bus->domain_nr = pci_assign_domain_nr(parent);
> > }
> >
>
> Hi Arnd,
> I kept the almost duplicated pci_host_assign_domain_nr() and
> pci_bus_assign_domain_nr() here for building happy, because now
> platform specific pci_domain_nr() still exists which may get domain
> number from pci_bus. pci_bus_assign_domain_nr() will be removed in
> the last patch.
>

I'm not sure I get your point: the approach I showed above seems to have
the same effect, except it doesn't duplicate code temporarily, which
makes it less error-prone in case your patch gets merged at the
same time as another patch that modifies pci_bus_assign_domain_nr.

Arnd