diff options
author | Stephane Eranian <eranian@hpl.hp.com> | 2006-07-09 21:12:39 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-09 18:47:12 -0700 |
commit | b3cf257623fabd8f1ee6700a6d328cc1c5da5a1d (patch) | |
tree | 28b98f21dd108864d2edc11d179cb48c118b2cf8 /arch/i386/kernel/ioport.c | |
parent | 09075ef0fd585fb093bb9a6cd1240272114f89cf (diff) | |
download | talos-op-linux-b3cf257623fabd8f1ee6700a6d328cc1c5da5a1d.tar.gz talos-op-linux-b3cf257623fabd8f1ee6700a6d328cc1c5da5a1d.zip |
[PATCH] i386: use thread_info flags for debug regs and IO bitmaps
Use thread info flags to track use of debug registers and IO bitmaps.
- add TIF_DEBUG to track when debug registers are active
- add TIF_IO_BITMAP to track when I/O bitmap is used
- modify __switch_to() to use the new TIF flags
Performance tested on Pentium II, ten runs of LMbench context switch
benchmark (smaller is better:)
before after
avg 3.65 3.39
min 3.55 3.33
Signed-off-by: Stephane Eranian <eranian@hpl.hp.com>
Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Acked-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/i386/kernel/ioport.c')
-rw-r--r-- | arch/i386/kernel/ioport.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/i386/kernel/ioport.c b/arch/i386/kernel/ioport.c index 79026f026b85..498e8bc197d5 100644 --- a/arch/i386/kernel/ioport.c +++ b/arch/i386/kernel/ioport.c @@ -79,6 +79,7 @@ asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int turn_on) memset(bitmap, 0xff, IO_BITMAP_BYTES); t->io_bitmap_ptr = bitmap; + set_thread_flag(TIF_IO_BITMAP); } /* |