diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2010-02-26 16:37:32 -0500 |
---|---|---|
committer | Martin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com> | 2010-02-26 16:37:30 -0500 |
commit | f64ca21714f114a78b6c19ceabc7745b29913efc (patch) | |
tree | ef01f90c3c0547c37f6259de2fe274a3a47e082a /arch/s390/kernel/smp.c | |
parent | 987bcdacb18a3adc2a48d85c9b005069c2f4dd7b (diff) |
[S390] zfcpdump: remove cross arch dump support
Remove support to be able to dump 31 bit systems with a 64 bit dumper.
This is mostly useless since no distro ships 31 bit kernels together
with a 64 bit dumper.
We also get rid of a bit of hacky code.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/smp.c')
-rw-r--r-- | arch/s390/kernel/smp.c | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c index 76a6fdd46c45..384a6846a65e 100644 --- a/arch/s390/kernel/smp.c +++ b/arch/s390/kernel/smp.c | |||
@@ -248,15 +248,6 @@ EXPORT_SYMBOL(smp_ctl_clear_bit); | |||
248 | 248 | ||
249 | #ifdef CONFIG_ZFCPDUMP | 249 | #ifdef CONFIG_ZFCPDUMP |
250 | 250 | ||
251 | /* | ||
252 | * zfcpdump_prefix_array holds prefix registers for the following scenario: | ||
253 | * 64 bit zfcpdump kernel and 31 bit kernel which is to be dumped. We have to | ||
254 | * save its prefix registers, since they get lost, when switching from 31 bit | ||
255 | * to 64 bit. | ||
256 | */ | ||
257 | unsigned int zfcpdump_prefix_array[NR_CPUS + 1] \ | ||
258 | __attribute__((__section__(".data"))); | ||
259 | |||
260 | static void __init smp_get_save_area(unsigned int cpu, unsigned int phy_cpu) | 251 | static void __init smp_get_save_area(unsigned int cpu, unsigned int phy_cpu) |
261 | { | 252 | { |
262 | if (ipl_info.type != IPL_TYPE_FCP_DUMP) | 253 | if (ipl_info.type != IPL_TYPE_FCP_DUMP) |
@@ -266,21 +257,17 @@ static void __init smp_get_save_area(unsigned int cpu, unsigned int phy_cpu) | |||
266 | "the dump\n", cpu, NR_CPUS - 1); | 257 | "the dump\n", cpu, NR_CPUS - 1); |
267 | return; | 258 | return; |
268 | } | 259 | } |
269 | zfcpdump_save_areas[cpu] = kmalloc(sizeof(union save_area), GFP_KERNEL); | 260 | zfcpdump_save_areas[cpu] = kmalloc(sizeof(struct save_area), GFP_KERNEL); |
270 | __cpu_logical_map[CPU_INIT_NO] = (__u16) phy_cpu; | 261 | __cpu_logical_map[CPU_INIT_NO] = (__u16) phy_cpu; |
271 | while (signal_processor(CPU_INIT_NO, sigp_stop_and_store_status) == | 262 | while (signal_processor(CPU_INIT_NO, sigp_stop_and_store_status) == |
272 | sigp_busy) | 263 | sigp_busy) |
273 | cpu_relax(); | 264 | cpu_relax(); |
274 | memcpy(zfcpdump_save_areas[cpu], | 265 | memcpy(zfcpdump_save_areas[cpu], |
275 | (void *)(unsigned long) store_prefix() + SAVE_AREA_BASE, | 266 | (void *)(unsigned long) store_prefix() + SAVE_AREA_BASE, |
276 | SAVE_AREA_SIZE); | 267 | sizeof(struct save_area)); |
277 | #ifdef CONFIG_64BIT | ||
278 | /* copy original prefix register */ | ||
279 | zfcpdump_save_areas[cpu]->s390x.pref_reg = zfcpdump_prefix_array[cpu]; | ||
280 | #endif | ||
281 | } | 268 | } |
282 | 269 | ||
283 | union save_area *zfcpdump_save_areas[NR_CPUS + 1]; | 270 | struct save_area *zfcpdump_save_areas[NR_CPUS + 1]; |
284 | EXPORT_SYMBOL_GPL(zfcpdump_save_areas); | 271 | EXPORT_SYMBOL_GPL(zfcpdump_save_areas); |
285 | 272 | ||
286 | #else | 273 | #else |