2003-06-11 19:01:51

by Miles Lane

[permalink] [raw]
Subject: Looks like your PCI patch broke the PPC build (and others)?

http://marc.theaimsgroup.com/?l=linux-kernel&m=105527406918793&w=2

CC drivers/pci/probe.o
drivers/pci/probe.c: In function `pci_scan_device':
drivers/pci/probe.c:532: dereferencing pointer to incomplete type
make[3]: *** [drivers/pci/probe.o] Error 1

--------------

diff -Nru a/drivers/pci/probe.c b/drivers/pci/probe.c
--- a/drivers/pci/probe.c Tue Jun 10 11:16:11 2003
+++ b/drivers/pci/probe.c Tue Jun 10 11:16:11 2003
@@ -529,7 +529,8 @@
pci_name_device(dev);

/* now put in global tree */
- strcpy(dev->dev.bus_id,dev->slot_name);
+ sprintf(dev->dev.bus_id, "%04x:%s", pci_domain_nr(bus),
+ dev->slot_name);
dev->dev.dma_mask = &dev->dma_mask;

return dev;


2003-06-11 20:12:19

by Greg KH

[permalink] [raw]
Subject: Re: Looks like your PCI patch broke the PPC build (and others)?

On Wed, Jun 11, 2003 at 12:15:34PM -0700, Miles Lane wrote:
> http://marc.theaimsgroup.com/?l=linux-kernel&m=105527406918793&w=2
>
> CC drivers/pci/probe.o
> drivers/pci/probe.c: In function `pci_scan_device':
> drivers/pci/probe.c:532: dereferencing pointer to incomplete type
> make[3]: *** [drivers/pci/probe.o] Error 1

Not my patch, Matthew's :)

I think the PPC developers have a fix for this.

thanks,

greg k-h

2003-06-12 06:59:59

by Paul Mackerras

[permalink] [raw]
Subject: Re: Looks like your PCI patch broke the PPC build (and others)?

Greg KH writes:

> Not my patch, Matthew's :)
>
> I think the PPC developers have a fix for this.

Just #include <asm/pci-bridge.h> at the top of include/asm-ppc/pci.h.
I'll push that change to Linus.

Paul.

2003-06-12 13:22:26

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: Looks like your PCI patch broke the PPC build (and others)?

On Thu, 2003-06-12 at 09:10, Paul Mackerras wrote:
> Greg KH writes:
>
> > Not my patch, Matthew's :)
> >
> > I think the PPC developers have a fix for this.
>
> Just #include <asm/pci-bridge.h> at the top of include/asm-ppc/pci.h.
> I'll push that change to Linus.

Well... asm/pci-bridge.h includes linux/pci.h which includes asm/pci.h,
so we have a circular include here...

What I did in my tree is to move the definition of pci_controller
from asm/pci-bridge.h to asm/pci.h. I'm now considering removing
asm/pci-bridge.h, what do you think ?

Ben.

2003-06-12 22:23:18

by Paul Mackerras

[permalink] [raw]
Subject: Re: Looks like your PCI patch broke the PPC build (and others)?

Benjamin Herrenschmidt writes:

> Well... asm/pci-bridge.h includes linux/pci.h which includes asm/pci.h,
> so we have a circular include here...

True, but it seems that the multiple inclusion protection saves us. :)

> What I did in my tree is to move the definition of pci_controller
> from asm/pci-bridge.h to asm/pci.h. I'm now considering removing
> asm/pci-bridge.h, what do you think ?

We could do that. It might be simpler to just take pci_domain_nr out
of line again though.

Paul.