Re: [PATCH] stop x86 ->sysdata abuse; introduce pci_sysdata

From: Muli Ben-Yehuda
Date: Wed Jun 06 2007 - 17:26:27 EST


On Wed, Jun 06, 2007 at 05:21:51PM -0400, Jeff Garzik wrote:
> > Ok, patch fixed, works for me with Calgary. Andi, it looks like you
> > added the acpi.c NUMA bits originally, perhaps you could test and/or
> > ack them?
>
> Just so there is no misunderstanding, I added the allocation bits.
>
> No idea who added the direct usage of ->sysdata for NUMA info.

Andi Kleen did according to the git log. I'm trying to get access to a
NUMA system, but in the meantime perhaps Andi can just eyeball it and
ack.

> > diff -r 05804111dbee arch/i386/pci/common.c
> > --- a/arch/i386/pci/common.c Tue Jun 05 11:34:51 2007 +0300
> > +++ b/arch/i386/pci/common.c Wed Jun 06 22:36:53 2007 +0300
> > @@ -29,12 +29,14 @@ struct pci_raw_ops *raw_pci_ops;
> >
> > static int pci_read(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 *value)
> > {
> > - return raw_pci_ops->read(0, bus->number, devfn, where, size, value);
> > + return raw_pci_ops->read(pci_domain_nr(bus), bus->number,
> > + devfn, where, size, value);
> > }
> >
> > static int pci_write(struct pci_bus *bus, unsigned int devfn, int where, int size, u32 value)
> > {
> > - return raw_pci_ops->write(0, bus->number, devfn, where, size, value);
> > + return raw_pci_ops->write(pci_domain_nr(bus), bus->number,
> > + devfn, where, size, value);
> > }
> >
> > struct pci_ops pci_root_ops = {
>
> Patch leakage? I thought I had removed this portion, as being
> specific to PCI domains.

Nope, it was there in your original patch and I kept it since it's
obviously harmless (without CONFIG_PCI_DOMAINS pci_domain_nr() is
defined to 0).

> No objection, obviously, and it's obviously safe given that
> CONFIG_PCI_DOMAINS is not defined on x86/x86-64.
>
> Nonetheless, it appears "off-topic" for NUMA/Calgary purposes.
>
> ACK everything, but IMO the pci_domain_nr() bits should be in a
> separate patch.

Fair enough, I'll drop it out of this one.

Cheers,
Muli
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/