kernel_optimize_test/arch/um/kernel
Anton Ivanov 2eb5f31bc4 um: Switch clocksource to hrtimers
UML is using an obsolete itimer call for
all timers and "polls" for kernel space timer firing
in its userspace portion resulting in a long list
of bugs and incorrect behaviour(s). It also uses
ITIMER_VIRTUAL for its timer which results in the
timer being dependent on it running and the cpu
load.

This patch fixes this by moving to posix high resolution
timers firing off CLOCK_MONOTONIC and relaying the timer
correctly to the UML userspace.

Fixes:
 - crashes when hosts suspends/resumes
 - broken userspace timers - effecive ~40Hz instead
   of what they should be. Note - this modifies skas behavior
   by no longer setting an itimer per clone(). Timer events
   are relayed instead.
 - kernel network packet scheduling disciplines
 - tcp behaviour especially under load
 - various timer related corner cases

Finally, overall responsiveness of userspace is better.

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Anton Ivanov <aivanov@brocade.com>
[rw: massaged commit message]
Signed-off-by: Richard Weinberger <richard@nod.at>
2015-11-06 22:54:49 +01:00
..
skas um: Switch clocksource to hrtimers 2015-11-06 22:54:49 +01:00
asm-offsets.c
config.c.in
dyn.lds.S
early_printk.c
exec.c
exitcode.c
gmon_syms.c
gprof_syms.c
initrd.c
irq.c um: Remove broken SMP support 2015-04-13 21:00:58 +02:00
kmsg_dump.c um: add a kmsg_dumper 2015-04-13 21:17:37 +02:00
ksyms.c um: Move syscall() declaration into os.h 2015-05-31 13:14:07 +02:00
maccess.c
Makefile um: add a kmsg_dumper 2015-04-13 21:17:37 +02:00
mem.c um: Remove broken highmem support 2015-04-13 21:01:02 +02:00
physmem.c um: Use char[] for linker script address declarations 2015-05-31 13:14:06 +02:00
process.c um: Switch clocksource to hrtimers 2015-11-06 22:54:49 +01:00
ptrace.c um: Don't pollute kernel namespace with uapi 2015-06-25 22:44:11 +02:00
reboot.c um: Remove SKAS3/4 support 2015-04-13 21:00:53 +02:00
sigio.c
signal.c um: Fix do_signal() prototype 2015-07-07 10:58:54 +02:00
stacktrace.c
syscall.c
sysrq.c um: Remove dead code from stacktrace 2015-04-13 21:00:40 +02:00
time.c um: Switch clocksource to hrtimers 2015-11-06 22:54:49 +01:00
tlb.c um: Report host OOM more nicely 2015-11-06 22:49:12 +01:00
trap.c um: Fix kernel mode fault condition 2015-10-19 22:53:37 +02:00
um_arch.c um: Use char[] for linker script address declarations 2015-05-31 13:14:06 +02:00
umid.c
uml.lds.S
vmlinux.lds.S