Messages in this thread | | | Subject | [PATCH] UML SMP support | Date | Tue, 15 Oct 2002 16:42:22 -0400 | From | Jeff Dike <> |
| |
Please pull http://jdike.stearns.org:5000/smp-2.5
This adds SMP support to UML. All global data owned by UML is now either locked or is commented as to why no locking is needed. All interrupts are currently handled by CPU 0. The special handling of the timer interrupt is now gone.
Jeff
arch/um/config.in | 5 + arch/um/drivers/chan_user.c | 2 arch/um/drivers/harddog_kern.c | 4 arch/um/drivers/hostaudio_kern.c | 1 arch/um/drivers/line.c | 22 ++++- arch/um/drivers/mconsole_kern.c | 28 +++++- arch/um/drivers/mconsole_user.c | 10 +- arch/um/drivers/mmapper_kern.c | 3 arch/um/drivers/net_kern.c | 23 ++++- arch/um/drivers/port_kern.c | 13 ++- arch/um/drivers/ssl.c | 5 - arch/um/drivers/stdio_console.c | 9 ++ arch/um/drivers/ubd_kern.c | 147 ++++++++++++++++++++++++---------- arch/um/drivers/ubd_user.c | 4 arch/um/drivers/xterm.c | 1 arch/um/include/2_5compat.h | 2 arch/um/include/irq_user.h | 4 arch/um/include/kern_util.h | 10 -- arch/um/include/mconsole.h | 2 arch/um/include/sigio.h | 2 arch/um/include/time_user.h | 6 - arch/um/kernel/exec_kern.c | 3 arch/um/kernel/exitcode.c | 3 arch/um/kernel/frame.c | 4 arch/um/kernel/helper.c | 1 arch/um/kernel/initrd_kern.c | 1 arch/um/kernel/irq.c | 29 ++++++ arch/um/kernel/irq_user.c | 162 ++++++++++++++++++++++++++----------- arch/um/kernel/mem.c | 45 +++++++--- arch/um/kernel/mem_user.c | 5 - arch/um/kernel/process.c | 14 +-- arch/um/kernel/process_kern.c | 53 +++++++++--- arch/um/kernel/sigio_kern.c | 13 +++ arch/um/kernel/sigio_user.c | 59 ++++++++++--- arch/um/kernel/signal_user.c | 27 +++--- arch/um/kernel/smp.c | 167 ++++++++++++++++++--------------------- arch/um/kernel/syscall_kern.c | 15 ++- arch/um/kernel/syscall_user.c | 13 --- arch/um/kernel/time.c | 44 +++------- arch/um/kernel/time_kern.c | 31 ++++++- arch/um/kernel/trap_kern.c | 15 ++- arch/um/kernel/trap_user.c | 79 +++++++----------- arch/um/kernel/tty_log.c | 4 arch/um/kernel/um_arch.c | 29 +++--- arch/um/kernel/umid.c | 4 arch/um/kernel/user_util.c | 1 arch/um/main.c | 13 ++- arch/um/ptproxy/proxy.c | 6 - arch/um/sys-i386/bugs.c | 1 arch/um/sys-i386/ptrace_user.c | 1 arch/um/sys-ppc/miscthings.c | 3 arch/um/uml.lds.S | 3 include/asm-um/cache.h | 3 include/asm-um/smp.h | 17 +++ include/asm-um/thread_info.h | 4 55 files changed, 774 insertions(+), 401 deletions(-)
ChangeSet@1.786, 2002-10-15 11:21:41-04:00, jdike@uml.karaya.com Fixed some locking bugs spotted by Oleg Drokin.
ChangeSet@1.785, 2002-10-14 18:51:59-04:00, jdike@uml.karaya.com Fixed the non-SMP build.
ChangeSet@1.784, 2002-10-14 11:31:46-04:00, jdike@uml.karaya.com config.in now defines CONFIG_NR_CPUS.
ChangeSet@1.783, 2002-10-14 09:53:55-04:00, jdike@uml.karaya.com This is the merge of the initial 2.4 SMP support. Locking was added where necessary. All processors take timer interrupts, but only CPU 0 calls the timer IRQ. The others just call update_process_times to keep the accounting straight. The timer interrupt is blocked along with the other signals.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |