]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blame - src/patches/suse-2.6.27.25/patches.xen/xen-sections
Updated xen patches taken from suse.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.xen / xen-sections
CommitLineData
cc90b958
BS
1From: jbeulich@novell.com
2Subject: fix placement of some routines/data
3Patch-mainline: obsolete
4
00e5a55c
BS
5--- sle11-2009-05-14.orig/arch/x86/kernel/e820-xen.c 2009-05-06 10:29:07.000000000 +0200
6+++ sle11-2009-05-14/arch/x86/kernel/e820-xen.c 2009-02-17 14:01:20.000000000 +0100
cc90b958
BS
7@@ -42,7 +42,7 @@
8 * user can e.g. boot the original kernel with mem=1G while still booting the
9 * next kernel with full memory.
10 */
11-struct e820map e820;
12+struct e820map __initdata e820;
00e5a55c 13 #ifndef CONFIG_XEN
cc90b958 14 struct e820map e820_saved;
00e5a55c
BS
15 #else
16--- sle11-2009-05-14.orig/arch/x86/kernel/process_32-xen.c 2008-10-01 16:20:58.000000000 +0200
17+++ sle11-2009-05-14/arch/x86/kernel/process_32-xen.c 2008-12-01 12:07:15.000000000 +0100
cc90b958
BS
18@@ -99,7 +99,7 @@ static void cpu_exit_clear(void)
19 }
20 #endif
21
22-static inline void play_dead(void)
23+static void __ref play_dead(void)
24 {
25 idle_task_exit();
26 local_irq_disable();
00e5a55c
BS
27--- sle11-2009-05-14.orig/arch/x86/kernel/process_64-xen.c 2008-10-01 16:20:58.000000000 +0200
28+++ sle11-2009-05-14/arch/x86/kernel/process_64-xen.c 2008-12-01 12:07:15.000000000 +0100
cc90b958
BS
29@@ -95,7 +95,7 @@ void exit_idle(void)
30 }
31
32 #ifdef CONFIG_HOTPLUG_CPU
33-static inline void play_dead(void)
34+static void __ref play_dead(void)
35 {
36 idle_task_exit();
37 #ifndef CONFIG_XEN
00e5a55c
BS
38--- sle11-2009-05-14.orig/arch/x86/kernel/time_32-xen.c 2009-03-24 10:13:50.000000000 +0100
39+++ sle11-2009-05-14/arch/x86/kernel/time_32-xen.c 2009-03-24 10:22:14.000000000 +0100
40@@ -702,7 +702,7 @@ int xen_update_persistent_clock(void)
cc90b958
BS
41 /* Dynamically-mapped IRQ. */
42 DEFINE_PER_CPU(int, timer_irq);
43
44-static void setup_cpu0_timer_irq(void)
45+static void __init setup_cpu0_timer_irq(void)
46 {
47 per_cpu(timer_irq, 0) =
48 bind_virq_to_irqhandler(
00e5a55c 49@@ -913,7 +913,7 @@ int __cpuinit local_setup_timer(unsigned
cc90b958
BS
50 return 0;
51 }
52
53-void __cpuexit local_teardown_timer(unsigned int cpu)
54+void __cpuinit local_teardown_timer(unsigned int cpu)
55 {
56 BUG_ON(cpu == 0);
57 unbind_from_irqhandler(per_cpu(timer_irq, cpu), NULL);
00e5a55c
BS
58--- sle11-2009-05-14.orig/arch/x86/mm/ioremap-xen.c 2009-01-16 10:45:51.000000000 +0100
59+++ sle11-2009-05-14/arch/x86/mm/ioremap-xen.c 2009-01-07 10:55:24.000000000 +0100
cc90b958
BS
60@@ -201,7 +201,8 @@ int touch_pte_range(struct mm_struct *mm
61
62 EXPORT_SYMBOL(touch_pte_range);
63
64-int page_is_ram(unsigned long pagenr)
65+#ifdef CONFIG_X86_32
66+int __init page_is_ram(unsigned long pagenr)
67 {
68 resource_size_t addr, end;
69 int i;
70@@ -239,6 +240,7 @@ int page_is_ram(unsigned long pagenr)
71 }
72 return 0;
73 }
74+#endif
75
76 /*
77 * Fix up the linear direct mapping of the kernel to avoid cache attribute
00e5a55c
BS
78--- sle11-2009-05-14.orig/drivers/xen/core/cpu_hotplug.c 2009-05-14 10:56:29.000000000 +0200
79+++ sle11-2009-05-14/drivers/xen/core/cpu_hotplug.c 2008-12-01 12:07:15.000000000 +0100
cc90b958
BS
80@@ -24,7 +24,7 @@ static int local_cpu_hotplug_request(voi
81 return (current->mm != NULL);
82 }
83
84-static void vcpu_hotplug(unsigned int cpu)
85+static void __cpuinit vcpu_hotplug(unsigned int cpu)
86 {
87 int err;
88 char dir[32], state[32];
89@@ -51,7 +51,7 @@ static void vcpu_hotplug(unsigned int cp
90 }
91 }
92
93-static void handle_vcpu_hotplug_event(
94+static void __cpuinit handle_vcpu_hotplug_event(
95 struct xenbus_watch *watch, const char **vec, unsigned int len)
96 {
97 unsigned int cpu;
98@@ -80,12 +80,12 @@ static int smpboot_cpu_notify(struct not
99 return NOTIFY_OK;
100 }
101
102-static int setup_cpu_watcher(struct notifier_block *notifier,
103- unsigned long event, void *data)
104+static int __cpuinit setup_cpu_watcher(struct notifier_block *notifier,
105+ unsigned long event, void *data)
106 {
107 unsigned int i;
108
109- static struct xenbus_watch cpu_watch = {
110+ static struct xenbus_watch __cpuinitdata cpu_watch = {
111 .node = "cpu",
112 .callback = handle_vcpu_hotplug_event,
113 .flags = XBWF_new_thread };
114@@ -105,7 +105,7 @@ static int __init setup_vcpu_hotplug_eve
115 {
116 static struct notifier_block hotplug_cpu = {
117 .notifier_call = smpboot_cpu_notify };
118- static struct notifier_block xsn_cpu = {
119+ static struct notifier_block __cpuinitdata xsn_cpu = {
120 .notifier_call = setup_cpu_watcher };
121
122 if (!is_running_on_xen())
123@@ -119,7 +119,7 @@ static int __init setup_vcpu_hotplug_eve
124
125 arch_initcall(setup_vcpu_hotplug_event);
126
127-int smp_suspend(void)
128+int __ref smp_suspend(void)
129 {
130 unsigned int cpu;
131 int err;
132@@ -140,7 +140,7 @@ int smp_suspend(void)
133 return 0;
134 }
135
136-void smp_resume(void)
137+void __ref smp_resume(void)
138 {
139 unsigned int cpu;
140
00e5a55c
BS
141--- sle11-2009-05-14.orig/drivers/xen/core/smpboot.c 2009-03-16 16:38:16.000000000 +0100
142+++ sle11-2009-05-14/drivers/xen/core/smpboot.c 2008-12-01 12:07:15.000000000 +0100
143@@ -168,7 +168,7 @@ static int __cpuinit xen_smp_intr_init(u
cc90b958
BS
144 }
145
146 #ifdef CONFIG_HOTPLUG_CPU
147-static void __cpuexit xen_smp_intr_exit(unsigned int cpu)
148+static void __cpuinit xen_smp_intr_exit(unsigned int cpu)
149 {
150 if (cpu != 0)
151 local_teardown_timer(cpu);
00e5a55c 152@@ -387,7 +387,7 @@ int __cpuexit __cpu_disable(void)
cc90b958
BS
153 return 0;
154 }
155
156-void __cpuexit __cpu_die(unsigned int cpu)
157+void __cpuinit __cpu_die(unsigned int cpu)
158 {
159 while (HYPERVISOR_vcpu_op(VCPUOP_is_up, cpu, NULL)) {
160 current->state = TASK_UNINTERRUPTIBLE;