android_kernel_xiaomi_sm8350/arch/um/include
Paolo 'Blaisorblade' Giarrusso 972410b023 [PATCH] uml: clean arch_switch usage
Call arch_switch also in switch_to_skas, even if it's, for now, a no-op for
that case (and mark this in the comment); this will change soon.

Also, arch_switch for TT mode is actually useless when the PT proxy (a
complicate debugging instrumentation for TT mode) is not enabled.  In fact, it
only calls update_debugregs, which checks debugregs_seq against seq (to check
if the registers are up-to-date - seq here means a "version number" of the
registers).

If the ptrace proxy is not enabled, debugregs_seq always stays 0 and
update_debugregs will be a no-op.  So, optimize this out (the compiler can't
do it).

Also, I've been disappointed by the fact that it would make a lot of sense if,
after calling a successful
update_debugregs(current->thread.arch.debugregs_seq),
current->thread.arch.debugregs_seq were updated with the new debugregs_seq.
But this is not done.  Is this a bug or a feature?  For all purposes, it seems
a bug (otherwise the whole mechanism does not make sense, which is also a
possibility to check), which causes some performance only problems (not
correctness), since we write_debugregs when not needed.

Also, as suggested by Jeff, remove a redundant enabling of SIGVTALRM,
comprised in the subsequent local_irq_enable().  I'm just a bit dubious if
ordering matters there...

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-31 12:18:52 -08:00
..
skas [PATCH] uml: oS header cleanups 2006-03-27 08:44:38 -08:00
sysdep-i386 [PATCH] uml: clean arch_switch usage 2006-03-31 12:18:52 -08:00
sysdep-ia64
sysdep-ppc
sysdep-x86_64 [PATCH] uml: fix missing KBUILD_BASENAME 2006-01-11 18:42:09 -08:00
tt [PATCH] uml: move headers to arch/um/include 2006-01-18 19:20:19 -08:00
aio.h
chan_kern.h [PATCH] uml: Add throttling to console driver 2006-01-06 08:33:46 -08:00
chan_user.h
choose-mode.h [PATCH] uml: better diagnostics for broken configs 2006-01-06 08:33:47 -08:00
common-offsets.h
elf_user.h
frame_kern.h
init.h [PATCH] uml: fix ((unused)) attribute 2006-02-24 14:31:37 -08:00
initrd.h
irq_kern.h
irq_user.h [PATCH] uml: move libc-dependent irq code to os-Linux 2006-03-27 08:44:37 -08:00
kern_util.h [PATCH] uml: clean arch_switch usage 2006-03-31 12:18:52 -08:00
kern.h [PATCH] uml: fix declaration of exit() 2006-03-27 08:44:37 -08:00
line.h [PATCH] uml: sparse cleanups 2006-03-31 12:18:51 -08:00
longjmp.h [PATCH] uml: use setjmp/longjmp instead of sigsetjmp/siglongjmp 2006-01-18 19:20:20 -08:00
mconsole_kern.h
mconsole.h [PATCH] uml: add mconsole_reply variant with length param 2006-01-06 08:33:47 -08:00
mem_kern.h
mem_user.h [PATCH] UML: Hotplug memory, take 2 2006-03-31 12:18:50 -08:00
mem.h
misc_constants.h [PATCH] uml: move libc-dependent irq code to os-Linux 2006-03-27 08:44:37 -08:00
mode_kern.h [PATCH] uml: move headers to arch/um/include 2006-01-18 19:20:19 -08:00
mode.h
net_kern.h
net_user.h
os.h [PATCH] UML: Hotplug memory, take 2 2006-03-31 12:18:50 -08:00
process.h
ptrace_user.h
registers.h [PATCH] uml: initialize process FP registers properly 2006-02-07 16:12:32 -08:00
sigcontext.h
sigio.h [PATCH] uml: move sigio_user.c to os-Linux/sigio.c 2006-03-27 08:44:38 -08:00
signal_kern.h
skas_ptrace.h
skas_ptregs.h
syscall.h
sysrq.h
task.h
tempfile.h
tlb.h
ubd_user.h
um_mmu.h
um_uaccess.h
umid.h
uml_uaccess.h
user_util.h [PATCH] uml: redeclare highmem 2006-03-31 12:18:50 -08:00
user.h [PATCH] uml: avoid malloc to sleep in atomic sections 2006-01-18 19:20:21 -08:00