From db165cde1e6ee8146396870a482a9f9d9953b167 Mon Sep 17 00:00:00 2001 From: Martin Schwidefsky Date: Sun, 13 Apr 2003 21:25:44 -0700 Subject: [PATCH] [PATCH] s390: uni-processor builds. Fixes for s390 kernel configured with CONFIG_SMP=n. --- arch/s390/kernel/entry.S | 6 ------ arch/s390/kernel/setup.c | 5 +++++ arch/s390/kernel/signal.c | 1 + arch/s390/kernel/traps.c | 1 + arch/s390/math-emu/math.c | 1 + drivers/s390/char/sclp.c | 4 ++-- drivers/s390/cio/device_id.c | 1 + drivers/s390/cio/device_pgid.c | 1 + drivers/s390/cio/requestirq.c | 3 ++- 9 files changed, 14 insertions(+), 9 deletions(-) diff --git a/arch/s390/kernel/entry.S b/arch/s390/kernel/entry.S index e7e4af0248205..bcc82979ec923 100644 --- a/arch/s390/kernel/entry.S +++ b/arch/s390/kernel/entry.S @@ -290,13 +290,9 @@ ret_from_fork: basr %r13,0 l %r13,.Lentry_base-.(%r13) # setup base pointer to &entry_base GET_THREAD_INFO # load pointer to task_struct to R9 -#if CONFIG_SMP || CONFIG_PREEMPT l %r1,BASED(.Lschedtail) la %r14,BASED(sysc_return) br %r1 # call schedule_tail, return to sysc_return -#else - b BASED(sysc_return) -#endif # # clone, fork, vfork, exec and sigreturn need glue, @@ -973,8 +969,6 @@ restart_go: .Lsigaltstack: .long sys_sigaltstack .Ltrace: .long syscall_trace .Lvfork: .long sys_vfork -#if CONFIG_SMP || CONFIG_PREEMPT .Lschedtail: .long schedule_tail -#endif diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index 79cdde53d80fa..93b095589a6ac 100644 --- a/arch/s390/kernel/setup.c +++ b/arch/s390/kernel/setup.c @@ -41,6 +41,7 @@ #include #include #include +#include /* * Machine setup.. @@ -534,10 +535,14 @@ static int show_cpuinfo(struct seq_file *m, void *v) (loops_per_jiffy/(5000/HZ))%100); } if (cpu_online_map & (1 << n)) { +#ifdef CONFIG_SMP if (smp_processor_id() == n) cpuinfo = &S390_lowcore.cpu_data; else cpuinfo = &lowcore_ptr[n]->cpu_data; +#else + cpuinfo = &S390_lowcore.cpu_data; +#endif seq_printf(m, "processor %li: " "version = %02X, " "identification = %06X, " diff --git a/arch/s390/kernel/signal.c b/arch/s390/kernel/signal.c index c03e33d79dc87..b5261920c406e 100644 --- a/arch/s390/kernel/signal.c +++ b/arch/s390/kernel/signal.c @@ -29,6 +29,7 @@ #include #include #include +#include #define _BLOCKABLE (~(sigmask(SIGKILL) | sigmask(SIGSTOP))) diff --git a/arch/s390/kernel/traps.c b/arch/s390/kernel/traps.c index 13b0dc2f1d3de..34268b2ca15c7 100644 --- a/arch/s390/kernel/traps.c +++ b/arch/s390/kernel/traps.c @@ -35,6 +35,7 @@ #include #include #include +#include /* Called from entry.S only */ extern void handle_per_exception(struct pt_regs *regs); diff --git a/arch/s390/math-emu/math.c b/arch/s390/math-emu/math.c index 9f65586f87ec7..1aa448d209f02 100644 --- a/arch/s390/math-emu/math.c +++ b/arch/s390/math-emu/math.c @@ -14,6 +14,7 @@ #include #include #include +#include #include "sfp-util.h" #include diff --git a/drivers/s390/char/sclp.c b/drivers/s390/char/sclp.c index f68a6b7ef04bb..92c3ae9b2113f 100644 --- a/drivers/s390/char/sclp.c +++ b/drivers/s390/char/sclp.c @@ -489,8 +489,8 @@ do_machine_quiesce(void) { psw_t quiesce_psw; - quiesce_psw.mask = _DW_PSW_MASK; - queisce_psw.addr = 0xfff; + quiesce_psw.mask = PSW_BASE_BITS | PSW_MASK_WAIT; + quiesce_psw.addr = 0xfff; __load_psw(quiesce_psw); } #endif diff --git a/drivers/s390/cio/device_id.c b/drivers/s390/cio/device_id.c index 22541bcaac1d0..1f091b58a8bb3 100644 --- a/drivers/s390/cio/device_id.c +++ b/drivers/s390/cio/device_id.c @@ -16,6 +16,7 @@ #include #include #include +#include #include "cio.h" #include "cio_debug.h" diff --git a/drivers/s390/cio/device_pgid.c b/drivers/s390/cio/device_pgid.c index 9e735d975b77c..7bab53e1d6418 100644 --- a/drivers/s390/cio/device_pgid.c +++ b/drivers/s390/cio/device_pgid.c @@ -16,6 +16,7 @@ #include #include #include +#include #include "cio.h" #include "cio_debug.h" diff --git a/drivers/s390/cio/requestirq.c b/drivers/s390/cio/requestirq.c index 25619bc06119f..a302f60e8f3d0 100644 --- a/drivers/s390/cio/requestirq.c +++ b/drivers/s390/cio/requestirq.c @@ -1,7 +1,7 @@ /* * drivers/s390/cio/requestirq.c * S/390 common I/O routines -- enabling and disabling of devices - * $Revision: 1.42 $ + * $Revision: 1.44 $ * * Copyright (C) 1999-2002 IBM Deutschland Entwicklung GmbH, * IBM Corporation @@ -14,6 +14,7 @@ #include #include #include +#include #include "css.h" -- 2.53.0