lkml.org 
[lkml]   [2003]   [Feb]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Subject[PATCH] UML fixes
Date
From
Please pull
http://jdike.stearns.org:5000/fixes-2.5

This fixes a number of UML bugs, including
changed CONFIG_* usage in userspace files to avoid conflicting with
the host's autoconf.h
fixed the time locking bug which was causing hangs under network load
the mconsole and uml_switch protocols are now 64-bit clean
some SMP fixes from Oleg Drokin
mmap return values are checked correctly
SA_SIGINFO signals are now delivered correctly
skas mode now is protected against a tmpfs mount running out of space
the UML main thread should no longer run kernel code
fixed a couple of data corruption bugs

There are also a number of cleanups:
the common portions of the linker scripts are now in a separate file,
included by both main scripts
the Kconfig was extended and some missing includes added
all initializers have been converted to C99
dead code removal
improved error messages
more movement of mode-specific code to arch/um/kernel/{tt,skas}

Jeff

arch/um/Kconfig | 73 +++++++------
arch/um/Makefile | 99 +++++++++++------
arch/um/Makefile-skas | 20 +++
arch/um/Makefile-tt | 7 +
arch/um/defconfig | 128 +++++++++++-----------
arch/um/drivers/chan_kern.c | 36 +++---
arch/um/drivers/chan_user.c | 6 -
arch/um/drivers/daemon_kern.c | 42 +++----
arch/um/drivers/daemon_user.c | 21 +--
arch/um/drivers/fd.c | 24 ++--
arch/um/drivers/harddog_kern.c | 16 +-
arch/um/drivers/hostaudio_kern.c | 28 ++---
arch/um/drivers/line.c | 27 +++-
arch/um/drivers/mcast_kern.c | 38 +++---
arch/um/drivers/mcast_user.c | 16 +-
arch/um/drivers/mconsole_kern.c | 10 -
arch/um/drivers/mmapper_kern.c | 14 +-
arch/um/drivers/net_kern.c | 47 ++++----
arch/um/drivers/null.c | 20 +--
arch/um/drivers/pcap_kern.c | 42 +++----
arch/um/drivers/pcap_user.c | 20 +--
arch/um/drivers/port_kern.c | 115 +++++++++++---------
arch/um/drivers/port_user.c | 65 ++++++-----
arch/um/drivers/pty.c | 67 ++++--------
arch/um/drivers/slip_kern.c | 42 +++----
arch/um/drivers/slip_user.c | 16 +-
arch/um/drivers/slirp_kern.c | 38 +++---
arch/um/drivers/slirp_user.c | 16 +-
arch/um/drivers/ssl.c | 74 ++++++-------
arch/um/drivers/stdio_console.c | 94 ++++++++--------
arch/um/drivers/tty.c | 24 ++--
arch/um/drivers/ubd_kern.c | 17 +--
arch/um/drivers/xterm.c | 44 ++++---
arch/um/drivers/xterm_kern.c | 14 +-
arch/um/dyn.lds.S | 167 ++++++++++++++++++++++++++++++
arch/um/include/choose-mode.h | 6 -
arch/um/include/frame.h | 4
arch/um/include/irq_user.h | 2
arch/um/include/kern_util.h | 10 -
arch/um/include/mconsole.h | 23 ++--
arch/um/include/mode.h | 4
arch/um/include/os.h | 14 +-
arch/um/include/signal_kern.h | 6 -
arch/um/include/skas_ptrace.h | 36 ++++++
arch/um/include/sysdep-i386/frame.h | 3
arch/um/include/sysdep-i386/frame_kern.h | 11 +
arch/um/include/sysdep-i386/frame_user.h | 23 ++--
arch/um/include/sysdep-i386/ptrace.h | 127 +++++++++++++---------
arch/um/include/sysdep-i386/sigcontext.h | 28 -----
arch/um/include/sysdep-i386/syscalls.h | 4
arch/um/include/time_user.h | 4
arch/um/include/umid.h | 5
arch/um/include/uml_uaccess.h | 28 +++++
arch/um/include/user_util.h | 5
arch/um/kernel/Makefile | 20 ---
arch/um/kernel/frame.c | 23 +++-
arch/um/kernel/frame_kern.c | 49 +++++---
arch/um/kernel/irq.c | 2
arch/um/kernel/irq_user.c | 30 ++---
arch/um/kernel/ksyms.c | 5
arch/um/kernel/mem.c | 65 +++++++----
arch/um/kernel/process_kern.c | 4
arch/um/kernel/ptrace.c | 2
arch/um/kernel/sigio_user.c | 41 +++----
arch/um/kernel/signal_kern.c | 36 ++----
arch/um/kernel/skas/include/mode.h | 7 -
arch/um/kernel/skas/include/mode_kern.h | 5
arch/um/kernel/skas/include/ptrace-skas.h | 2
arch/um/kernel/skas/include/skas.h | 10 -
arch/um/kernel/skas/include/skas_ptrace.h | 36 ------
arch/um/kernel/skas/include/uaccess.h | 3
arch/um/kernel/skas/mem.c | 5
arch/um/kernel/skas/mem_user.c | 6 -
arch/um/kernel/skas/process.c | 41 ++++---
arch/um/kernel/skas/process_kern.c | 25 ++--
arch/um/kernel/skas/sys-i386/sigcontext.c | 83 +++++++-------
arch/um/kernel/skas/syscall_kern.c | 2
arch/um/kernel/skas/syscall_user.c | 5
arch/um/kernel/skas/tlb.c | 14 +-
arch/um/kernel/skas/trap_user.c | 27 ++--
arch/um/kernel/sys_call_table.c | 2
arch/um/kernel/tempfile.c | 23 +---
arch/um/kernel/time.c | 13 +-
arch/um/kernel/time_kern.c | 18 +--
arch/um/kernel/tlb.c | 6 +
arch/um/kernel/trap_kern.c | 10 +
arch/um/kernel/trap_user.c | 46 ++++----
arch/um/kernel/tt/Makefile | 17 ++-
arch/um/kernel/tt/gdb.c | 18 +--
arch/um/kernel/tt/gdb_kern.c | 6 -
arch/um/kernel/tt/include/mode.h | 7 -
arch/um/kernel/tt/include/mode_kern.h | 2
arch/um/kernel/tt/include/ptrace-tt.h | 2
arch/um/kernel/tt/include/tt.h | 3
arch/um/kernel/tt/include/uaccess.h | 4
arch/um/kernel/tt/mem.c | 26 ----
arch/um/kernel/tt/mem_user.c | 50 ++++++++
arch/um/kernel/tt/process_kern.c | 19 +--
arch/um/kernel/tt/ptproxy/proxy.c | 16 +-
arch/um/kernel/tt/sys-i386/sigcontext.c | 5
arch/um/kernel/tt/syscall_kern.c | 17 +--
arch/um/kernel/tt/syscall_user.c | 11 -
arch/um/kernel/tt/tlb.c | 2
arch/um/kernel/tt/trap_user.c | 15 +-
arch/um/kernel/tt/uaccess_user.c | 42 -------
arch/um/kernel/tt/unmap.c | 34 ++++++
arch/um/kernel/uaccess_user.c | 64 +++++++++++
arch/um/kernel/um_arch.c | 19 ++-
arch/um/kernel/umid.c | 16 +-
arch/um/kernel/unmap.c | 34 ------
arch/um/kernel/user_syms.c | 9 -
arch/um/kernel/user_util.c | 25 ----
arch/um/os-Linux/drivers/ethertap_kern.c | 34 +++---
arch/um/os-Linux/drivers/ethertap_user.c | 16 +-
arch/um/os-Linux/drivers/tuntap_kern.c | 36 +++---
arch/um/os-Linux/drivers/tuntap_user.c | 16 +-
arch/um/os-Linux/file.c | 21 ++-
arch/um/os-Linux/process.c | 2
arch/um/sys-i386/Makefile | 6 -
arch/um/sys-i386/bugs.c | 2
arch/um/sys-i386/extable.c | 30 +++++
arch/um/sys-i386/fault.c | 2
arch/um/sys-i386/sigcontext.c | 2
arch/um/sys-i386/util/mk_thread_kern.c | 3
arch/um/uml.lds.S | 78 +-------------
arch/um/util/mk_task_kern.c | 2
include/asm-um/archparam-i386.h | 2
include/asm-um/bug.h | 18 +++
include/asm-um/common.lds.S | 86 +++++++++++++++
include/asm-um/page.h | 17 ---
include/asm-um/pgtable.h | 3
include/asm-um/processor-i386.h | 4
include/asm-um/ptrace-generic.h | 5
include/asm-um/ptrace-i386.h | 3
include/asm-um/ucontext.h | 6 +
135 files changed, 1943 insertions(+), 1450 deletions(-)

ChangeSet@1.961, 2003-02-05 11:34:40-05:00, jdike@uml.karaya.com
Merge

ChangeSet@1.956.1.7, 2003-02-05 10:24:48-05:00, jdike@uml.karaya.com
Merged a conflict in ptrace.h.

ChangeSet@1.956.2.6, 2003-01-18 22:12:47-05:00, jdike@uml.karaya.com
Merge jdike.stearns.org:linux/cleanup-2.5/
into uml.karaya.com:/home/jdike/linux/2.5/cleanup-2.5

ChangeSet@1.960, 2003-01-18 21:50:59-05:00, jdike@uml.karaya.com
Merge

ChangeSet@1.956.5.1, 2003-01-18 21:48:19-05:00, jdike@jdike.wstearns.org
Fixed a conflict in the linker script.

ChangeSet@1.956.4.1, 2003-01-18 21:22:25-05:00, jdike@jdike.wstearns.org
Fixed a conflict in the linker script.

ChangeSet@1.956.1.5, 2003-01-18 20:23:13-05:00, jdike@uml.karaya.com
Changed some CONFIG_* symbols to UML_CONFIG_*.

ChangeSet@1.956.2.5, 2003-01-18 18:37:47-05:00, jdike@uml.karaya.com
Replaced some CONFIG_* with UML_CONFIG_*.

ChangeSet@1.956.1.4, 2003-01-18 15:29:34-05:00, jdike@uml.karaya.com
Fixed the time locking bug.
The mconsole and switch protocols are now 64-bit clean.
Fixed some smaller bugs.

ChangeSet@1.956.2.4, 2003-01-18 15:26:27-05:00, jdike@uml.karaya.com
A bunch of minor changes ported up from 2.4.
All userspace uses of CONFIG_* have been changed to UML_CONFIG_*
to avoid conflicts with the host's config.
os_open_file now has FD_CLOEXEC support.

ChangeSet@1.956.1.3, 2003-01-18 13:07:38-05:00, jdike@uml.karaya.com
Ported a uml-config.h change from 2.4.

ChangeSet@1.956.2.3, 2003-01-18 13:06:39-05:00, jdike@uml.karaya.com
Ported a cleanup from 2.4.

ChangeSet@1.959, 2003-01-17 22:32:31-05:00, jdike@uml.karaya.com
Fixed dyn.lds.S to include common.lds.S.

ChangeSet@1.956.1.2, 2003-01-17 22:20:49-05:00, jdike@uml.karaya.com
Some SMP fixes from Oleg.

ChangeSet@1.956.2.2, 2003-01-17 22:20:03-05:00, jdike@uml.karaya.com
Correctly check the mmap return value.

ChangeSet@1.958, 2003-01-17 22:19:22-05:00, jdike@uml.karaya.com
Some build changes for 2.5.59 and SMP. Also cleanup of the linker
scripts and Kconfig.

ChangeSet@1.956.2.1, 2003-01-17 12:02:05-05:00, jdike@uml.karaya.com
Merged the vmlinux.lds.h changes.

ChangeSet@1.957, 2003-01-17 11:59:08-05:00, jdike@uml.karaya.com
Merged the vmlinux.lds.h changes.

ChangeSet@1.914.12.2, 2003-01-16 16:52:16-05:00, jdike@uml.karaya.com
Merge jdike.stearns.org:linux/fixes-2.5/
into uml.karaya.com:/home/jdike/linux/2.5/fixes-2.5

ChangeSet@1.914.10.5, 2003-01-16 16:31:28-05:00, jdike@uml.karaya.com
Merge jdike.stearns.org:linux/cleanup-2.5/
into uml.karaya.com:/home/jdike/linux/2.5/cleanup-2.5

ChangeSet@1.914.22.1, 2003-01-16 16:26:38-05:00, jdike@jdike.wstearns.org
Merge jdike.wstearns.org:/home/jdike/linux/linus-2.5
into jdike.wstearns.org:/home/jdike/linux/fixes-2.5

ChangeSet@1.914.21.1, 2003-01-16 16:08:34-05:00, jdike@jdike.wstearns.org
Merge jdike.wstearns.org:/home/jdike/linux/linus-2.5
into jdike.wstearns.org:/home/jdike/linux/cleanup-2.5

ChangeSet@1.914.19.1, 2003-01-16 15:35:43-05:00, jdike@uml.karaya.com
Fixed a merge typo in Kconfig.

ChangeSet@1.914.10.4, 2003-01-16 15:26:33-05:00, jdike@uml.karaya.com
Merge uml.karaya.com:/home/jdike/linux/2.5/build-2.5
into uml.karaya.com:/home/jdike/linux/2.5/cleanup-2.5

ChangeSet@1.914.11.2, 2003-01-16 15:21:14-05:00, jdike@uml.karaya.com
Merge

ChangeSet@1.914.10.3, 2003-01-16 15:10:38-05:00, jdike@uml.karaya.com
Fixed a conflict in Kconfig between Oleg's updates and the
existing changes.

ChangeSet@1.914.10.2, 2003-01-16 10:45:16-05:00, jdike@uml.karaya.com
Added gpl_ksymtab and kallsyms sections to the linker scripts.

ChangeSet@1.914.18.1, 2003-01-16 10:44:25-05:00, jdike@uml.karaya.com
Updates to bring UML up to 2.5.58.

ChangeSet@1.914.12.1, 2003-01-15 21:57:53-05:00, jdike@uml.karaya.com
Merge jdike.stearns.org:linux/fixes-2.5/
into uml.karaya.com:/home/jdike/linux/2.5/fixes-2.5

ChangeSet@1.914.11.1, 2003-01-15 21:54:48-05:00, jdike@uml.karaya.com
Merge jdike.stearns.org:linux/cleanup-2.5/
into uml.karaya.com:/home/jdike/linux/2.5/cleanup-2.5

ChangeSet@1.838.129.1, 2002-12-29 21:37:02-05:00, jdike@uml.karaya.com
Merge

ChangeSet@1.838.128.1, 2002-12-29 21:35:59-05:00, jdike@uml.karaya.com
Merge uml.karaya.com:/home/jdike/linux/2.5/fixes-2.5
into uml.karaya.com:/home/jdike/linux/2.5/fixes-2.5-linus

ChangeSet@1.838.127.1, 2002-12-29 21:28:59-05:00, jdike@uml.karaya.com
Merge uml.karaya.com:/home/jdike/linux/2.5/build-2.5
into uml.karaya.com:/home/jdike/linux/2.5/build-2.5-linus

ChangeSet@1.838.126.2, 2002-12-29 20:37:16-05:00, jdike@uml.karaya.com
Fixed a few problems in the last merge.

ChangeSet@1.838.126.1, 2002-12-29 20:05:55-05:00, jdike@uml.karaya.com
Forward ported a number of bug fixes from 2.4, including SA_SIGINFO
signal delivery, protecting skas mode against tmpfs running out of
space, protecting the UML main thread against accidentally running
kernel code, and a couple of data corruption bugs.

ChangeSet@1.838.118.6, 2002-12-29 18:46:34-05:00, jdike@uml.karaya.com
Merged in the C99 initializer changes.

ChangeSet@1.838.124.1, 2002-12-29 18:31:34-05:00, jdike@uml.karaya.com
Forward ported a bunch of cleanups from 2.4. Improved error messages,
slightly different formatting, removal of dead code, and some stray
C99 initializer conversions.

ChangeSet@1.838.122.6, 2002-12-29 15:27:19-05:00, jdike@uml.karaya.com
Fixed the archmrproper rule to not delete linker script sources.

ChangeSet@1.838.122.5, 2002-12-29 15:21:40-05:00, jdike@uml.karaya.com
Fixed handling of the linker script.

ChangeSet@1.838.122.4, 2002-12-29 15:05:58-05:00, jdike@uml.karaya.com
Pulled in a number of other fixes which were needed to bring the
build up to date.

ChangeSet@1.838.122.3, 2002-12-29 12:10:51-05:00, jdike@uml.karaya.com
Moved the segment remapping code under arch/um/kernel/tt.

ChangeSet@1.838.122.2, 2002-12-28 22:35:25-05:00, jdike@uml.karaya.com
Moved skas_ptrace.h.

ChangeSet@1.838.122.1, 2002-12-28 22:06:40-05:00, jdike@uml.karaya.com
Merged the 2.4 build changes which split the mode-specific stuff
into separate Makefiles and add the ability to build a dynamically
loaded binary.

ChangeSet@1.838.118.5, 2002-12-28 21:27:46-05:00, jdike@uml.karaya.com
Missed an initializer in the ethertap backend.

ChangeSet@1.838.118.4, 2002-12-28 21:20:41-05:00, jdike@uml.karaya.com
Converted a bunch of inititializers in the drivers that I missed.

ChangeSet@1.838.118.3, 2002-12-28 19:48:40-05:00, jdike@uml.karaya.com
Converted a few more initializers I missed on the first pass.

ChangeSet@1.838.118.2, 2002-12-28 15:28:07-05:00, jdike@uml.karaya.com
Converted all initializers over to C99 syntax.

ChangeSet@1.838.118.1, 2002-12-28 11:50:51-05:00, jdike@uml.karaya.com
Merge http://jdike.stearns.org:5000/doc-2.5
into uml.karaya.com:/home/jdike/linux/2.5/uml-2.5

ChangeSet@1.838.117.4, 2002-12-28 11:42:00-05:00, jdike@uml.karaya.com
Merge http://jdike.stearns.org:5000/updates-2.5
into uml.karaya.com:/home/jdike/linux/2.5/uml-2.5

ChangeSet@1.838.117.3, 2002-12-28 11:32:32-05:00, jdike@uml.karaya.com
Fixed a merge conflict in port_kern.c

ChangeSet@1.838.117.1, 2002-12-28 11:12:47-05:00, jdike@uml.karaya.com
Merge http://jdike.stearns.org:5000/mconfig-2.5
into uml.karaya.com:/home/jdike/linux/2.5/uml-2.5

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:32    [W:0.032 / U:0.432 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site