Hi List, hi Richard, I am going to sort out the UBD patchset next as that has no dependencies on timer and the other stuff which is waiting in the queue behind the timers.
That should give UML a significant boost. It is nothing particularly revolutionary (qemu has been using some of that for ages). I should be able to get these out of the door early on this week. A. P.S. If there is anything to fix on the timer one, please shout. A. On 21/10/15 09:42, Anton Ivanov wrote: > Background: 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 > > FIXES: 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. > > FIXES: kernel network packet scheduling disciplines > FIXES: tcp behaviour especially under load > FIXES: various timer related corner cases > > IMPROVES: overall responsiveness of the userspace > > Signed-off-by: Anton Ivanov <aiva...@brocade.com> > Signed-off-by: Thomas Meyer <tho...@m3y3r.de> > --- > arch/um/Makefile | 2 +- > arch/um/include/shared/os.h | 15 +- > arch/um/include/shared/skas/stub-data.h | 5 +- > arch/um/include/shared/timer-internal.h | 13 ++ > arch/um/kernel/process.c | 6 +- > arch/um/kernel/skas/clone.c | 5 - > arch/um/kernel/skas/mmu.c | 2 + > arch/um/kernel/time.c | 71 +++++---- > arch/um/os-Linux/internal.h | 1 - > arch/um/os-Linux/main.c | 6 +- > arch/um/os-Linux/process.c | 5 + > arch/um/os-Linux/signal.c | 35 +++-- > arch/um/os-Linux/skas/process.c | 44 ++---- > arch/um/os-Linux/time.c | 248 > ++++++++++++++++---------------- > 14 files changed, 231 insertions(+), 227 deletions(-) > create mode 100644 arch/um/include/shared/timer-internal.h > delete mode 100644 arch/um/os-Linux/internal.h > [snip] ------------------------------------------------------------------------------ _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel