linux/arch
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
..
alpha [PATCH] RTC: Remove RTC UIP synchronization on Alpha 2006-03-28 09:16:01 -08:00
arm Merge master.kernel.org:/home/rmk/linux-2.6-arm 2006-03-28 13:53:03 -08:00
arm26 [PATCH] unify PFN_* macros 2006-03-27 08:44:48 -08:00
cris [PATCH] unify PFN_* macros 2006-03-27 08:44:48 -08:00
frv
h8300
i386 [PATCH] i386 kdump timer vector lockup fix 2006-03-31 12:18:50 -08:00
ia64 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 2006-03-30 12:38:18 -08:00
m32r [PATCH] unify PFN_* macros 2006-03-27 08:44:48 -08:00
m68k [PATCH] RTC: Remove some duplicate BCD definitions 2006-03-28 09:16:01 -08:00
m68knommu
mips [PATCH] remove add_parent()'s parent argument 2006-03-28 18:36:41 -08:00
parisc [PARISC] Enabled some NLS modules in a500, b180 and c3000 defconfigs 2006-03-30 17:48:58 +00:00
powerpc [PATCH] powerpc: Remove oprofile spinlock backtrace code 2006-03-29 13:44:16 +11:00
ppc [PATCH] for_each_possible_cpu: ppc 2006-03-29 13:44:16 +11:00
s390 [PATCH] Notifier chain update: API changes 2006-03-27 08:44:50 -08:00
sh [PATCH] for_each_possible_cpu: sh 2006-03-31 12:18:50 -08:00
sh64 [PATCH] RTC: Remove some duplicate BCD definitions 2006-03-28 09:16:01 -08:00
sparc
sparc64 [PATCH] RTC: Remove RTC UIP synchronization on Sparc64 2006-03-28 09:16:00 -08:00
um [PATCH] uml: clean arch_switch usage 2006-03-31 12:18:52 -08:00
v850
x86_64 [PATCH] RTC: Remove RTC UIP synchronization on x86_64 2006-03-28 09:16:00 -08:00
xtensa [PATCH] Notifier chain update: API changes 2006-03-27 08:44:50 -08:00