[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] Convert __init into __devinit in wakeup path.



# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1184173067 -3600
# Node ID a9103c71565e69f79458cc19a920cc17fcba9de2
# Parent  c3929e540632ec30c19d85a2884f1e49081b8410
Convert __init into __devinit in wakeup path.

Need to ensure all the code slice in the wakeup path still
existing. For this purpose, we have to use __devinit instead
of __init, since the former is null for CONFIG_HOTPLUG while
the latter always causes related code to be free-ed after
first boot.

Later when adding __init to some function, be sure to consider
wakeup case and cpu hotplug!

Signed-off-by <Kevin.Tian@xxxxxxxxx>
---
 xen/arch/x86/apic.c         |    2 +-
 xen/arch/x86/i8259.c        |    2 +-
 xen/arch/x86/nmi.c          |    2 +-
 xen/arch/x86/x86_32/traps.c |    2 +-
 xen/arch/x86/x86_64/traps.c |    2 +-
 xen/drivers/char/ns16550.c  |    4 ++--
 xen/drivers/char/serial.c   |    4 ++--
 7 files changed, 9 insertions(+), 9 deletions(-)

diff -r c3929e540632 -r a9103c71565e xen/arch/x86/apic.c
--- a/xen/arch/x86/apic.c       Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/arch/x86/apic.c       Wed Jul 11 17:57:47 2007 +0100
@@ -957,7 +957,7 @@ void __setup_APIC_LVTT(unsigned int cloc
     apic_write_around(APIC_TMICT, clocks/APIC_DIVISOR);
 }
 
-static void __init setup_APIC_timer(unsigned int clocks)
+static void __devinit setup_APIC_timer(unsigned int clocks)
 {
     unsigned long flags;
     local_irq_save(flags);
diff -r c3929e540632 -r a9103c71565e xen/arch/x86/i8259.c
--- a/xen/arch/x86/i8259.c      Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/arch/x86/i8259.c      Wed Jul 11 17:57:47 2007 +0100
@@ -336,7 +336,7 @@ int i8259A_suspend(void)
     return 0;
 }
 
-void __init init_8259A(int auto_eoi)
+void __devinit init_8259A(int auto_eoi)
 {
     unsigned long flags;
 
diff -r c3929e540632 -r a9103c71565e xen/arch/x86/nmi.c
--- a/xen/arch/x86/nmi.c        Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/arch/x86/nmi.c        Wed Jul 11 17:57:47 2007 +0100
@@ -202,7 +202,7 @@ void release_lapic_nmi(void)
         enable_lapic_nmi_watchdog();
 }
 
-#define __pminit __init
+#define __pminit __devinit
 
 /*
  * Activate the NMI watchdog via the local APIC.
diff -r c3929e540632 -r a9103c71565e xen/arch/x86/x86_32/traps.c
--- a/xen/arch/x86/x86_32/traps.c       Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/arch/x86/x86_32/traps.c       Wed Jul 11 17:57:47 2007 +0100
@@ -232,7 +232,7 @@ unsigned long do_iret(void)
     return 0;
 }
 
-void __init percpu_traps_init(void)
+void __devinit percpu_traps_init(void)
 {
     struct tss_struct *tss = &doublefault_tss;
     asmlinkage int hypercall(void);
diff -r c3929e540632 -r a9103c71565e xen/arch/x86/x86_64/traps.c
--- a/xen/arch/x86/x86_64/traps.c       Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/arch/x86/x86_64/traps.c       Wed Jul 11 17:57:47 2007 +0100
@@ -285,7 +285,7 @@ static int write_stack_trampoline(
     return 34;
 }
 
-void __init percpu_traps_init(void)
+void __devinit percpu_traps_init(void)
 {
     char *stack_bottom, *stack;
     int   cpu = smp_processor_id();
diff -r c3929e540632 -r a9103c71565e xen/drivers/char/ns16550.c
--- a/xen/drivers/char/ns16550.c        Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/drivers/char/ns16550.c        Wed Jul 11 17:57:47 2007 +0100
@@ -170,7 +170,7 @@ static int ns16550_getc(struct serial_po
     return 1;
 }
 
-static void __init ns16550_init_preirq(struct serial_port *port)
+static void __devinit ns16550_init_preirq(struct serial_port *port)
 {
     struct ns16550 *uart = port->uart;
     unsigned char lcr;
@@ -214,7 +214,7 @@ static void __init ns16550_init_preirq(s
         port->tx_fifo_size = 16;
 }
 
-static void __init ns16550_init_postirq(struct serial_port *port)
+static void __devinit ns16550_init_postirq(struct serial_port *port)
 {
     struct ns16550 *uart = port->uart;
     int rc, bits;
diff -r c3929e540632 -r a9103c71565e xen/drivers/char/serial.c
--- a/xen/drivers/char/serial.c Wed Jul 11 17:48:10 2007 +0100
+++ b/xen/drivers/char/serial.c Wed Jul 11 17:57:47 2007 +0100
@@ -348,7 +348,7 @@ int serial_tx_space(int handle)
     return SERIAL_TXBUFSZ - (port->txbufp - port->txbufc);
 }
 
-void __init serial_init_preirq(void)
+void __devinit serial_init_preirq(void)
 {
     int i;
     for ( i = 0; i < ARRAY_SIZE(com); i++ )
@@ -356,7 +356,7 @@ void __init serial_init_preirq(void)
             com[i].driver->init_preirq(&com[i]);
 }
 
-void __init serial_init_postirq(void)
+void __devinit serial_init_postirq(void)
 {
     int i;
     for ( i = 0; i < ARRAY_SIZE(com); i++ )

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.