]> git.hungrycats.org Git - linux/commitdiff
[PATCH] i386/io_apic init section fixups
authorRandy Dunlap <rddunlap@osdl.org>
Mon, 18 Oct 2004 16:02:50 +0000 (09:02 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Mon, 18 Oct 2004 16:02:50 +0000 (09:02 -0700)
Code section errors in i386/io_apic.c found by scripts/reference_init.pl.
Looks like they could cause problems for a few drivers or in a real hotplug
environment.

Error: ./arch/i386/kernel/io_apic.o .text refers to 000018ff R_386_PC32        .init.text

call chain:
  snd_mpu401_acpi_resource
    acpi_register_gsi
      mp_register_gsi
io_apic_set_pci_routing
{A}   ioapic_register_intr
    IO_APIC_irq_trigger
      find_irq_entry

Error: ./arch/i386/kernel/io_apic.o .text refers to 00001967 R_386_PC32        .init.text

(as above thru {A}, then:)
  IO_APIC_irq_trigger
    irq_trigger
      MPBIOS_trigger >> removing __init from this led to
   needing to remove __init from
   EISA_ELCR also.

Signed-off-by: Randy Dunlap <rddunlap@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/io_apic.c

index 48fa9cc14f65ac5333ca4c5f92511fc69113659b..93864486a40a1aa09c78316b0e7fe4f5bcc94571 100644 (file)
@@ -728,7 +728,7 @@ __setup("pirq=", ioapic_pirq_setup);
 /*
  * Find the IRQ entry number of a certain pin.
  */
-static int __init find_irq_entry(int apic, int pin, int type)
+static int find_irq_entry(int apic, int pin, int type)
 {
        int i;
 
@@ -838,7 +838,7 @@ void __init setup_ioapic_dest(void)
 /*
  * EISA Edge/Level control register, ELCR
  */
-static int __init EISA_ELCR(unsigned int irq)
+static int EISA_ELCR(unsigned int irq)
 {
        if (irq < 16) {
                unsigned int port = 0x4d0 + (irq >> 3);
@@ -955,7 +955,7 @@ static int __init MPBIOS_polarity(int idx)
        return polarity;
 }
 
-static int __init MPBIOS_trigger(int idx)
+static int MPBIOS_trigger(int idx)
 {
        int bus = mp_irqs[idx].mpc_srcbus;
        int trigger;