Commit:     451124a7cc6c89fcb83d48082c7290f16f652f1c
Parent:     4105717bc98ba01663ff28f8a16d8716ba9d07fe
Author:     Sam Ravnborg <[EMAIL PROTECTED]>
AuthorDate: Sat Feb 2 22:33:43 2008 +0100
Committer:  Greg Kroah-Hartman <[EMAIL PROTECTED]>
CommitDate: Sat Feb 2 15:08:04 2008 -0800

    PCI: fix 4x section mismatch warnings
    The following warnings were issued during build of
    drivers/pci with an allyesconfig build:
    WARNING: o-x86_64/drivers/pci/built-in.o(.text+0xdaf): Section mismatch in 
reference from the function pci_add_new_bus() to the function 
    WARNING: o-x86_64/drivers/pci/built-in.o(.text+0x15e2): Section mismatch in 
reference from the function pci_scan_single_device() to the function 
    WARNING: o-x86_64/drivers/pci/built-in.o(.text+0x1b0c5): Section mismatch 
in reference from the function pci_bus_assign_resources() to the function 
    WARNING: o-x86_64/drivers/pci/built-in.o(.text+0x1b32d): Section mismatch 
in reference from the function pci_bus_size_bridges() to the function 
    Investigating each case closer it looked like all
    referred functions are only used in the init phase
    or during hotplug.
    So to avoid wasting too much memory in the non-hotplug
    case the simpler fix was to allow the fuctions to
    use code/data from the __devinit sections.
    This was done in all four case by adding the __ref
    Signed-off-by: Sam Ravnborg <[EMAIL PROTECTED]>
    Cc: Adrian Bunk <[EMAIL PROTECTED]>
    Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>
 drivers/pci/probe.c     |    4 ++--
 drivers/pci/setup-bus.c |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
index 3bb2bc2..7f5dab3 100644
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
@@ -433,7 +433,7 @@ pci_alloc_child_bus(struct pci_bus *parent, struct pci_dev 
*bridge, int busnr)
        return child;
-struct pci_bus *pci_add_new_bus(struct pci_bus *parent, struct pci_dev *dev, 
int busnr)
+struct pci_bus *__ref pci_add_new_bus(struct pci_bus *parent, struct pci_dev 
*dev, int busnr)
        struct pci_bus *child;
@@ -948,7 +948,7 @@ void pci_device_add(struct pci_dev *dev, struct pci_bus 
-struct pci_dev *pci_scan_single_device(struct pci_bus *bus, int devfn)
+struct pci_dev *__ref pci_scan_single_device(struct pci_bus *bus, int devfn)
        struct pci_dev *dev;
diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
index 8a7232f..262b043 100644
--- a/drivers/pci/setup-bus.c
+++ b/drivers/pci/setup-bus.c
@@ -456,7 +456,7 @@ pci_bus_size_cardbus(struct pci_bus *bus)
-void pci_bus_size_bridges(struct pci_bus *bus)
+void __ref pci_bus_size_bridges(struct pci_bus *bus)
        struct pci_dev *dev;
        unsigned long mask, prefmask;
@@ -511,7 +511,7 @@ void pci_bus_size_bridges(struct pci_bus *bus)
-void pci_bus_assign_resources(struct pci_bus *bus)
+void __ref pci_bus_assign_resources(struct pci_bus *bus)
        struct pci_bus *b;
        struct pci_dev *dev;
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to