diff options
author | Jeff Dike <jdike@addtoit.com> | 2007-10-16 04:26:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 12:43:05 -0400 |
commit | 6aa802ce6acc9b1f0b34114b3f7c21c84872cc3a (patch) | |
tree | 74523303349693ef482dec4a1d803566b69c6abd /arch/um/kernel/tlb.c | |
parent | 4c9e13851315a25a705e7a686116e491041ca228 (diff) |
uml: throw out CHOOSE_MODE
The next stage after removing code which depends on CONFIG_MODE_TT is removing
the CHOOSE_MODE abstraction, which provided both compile-time and run-time
branching to either tt-mode or skas-mode code.
This patch removes choose-mode.h and all inclusions of it, and replaces all
CHOOSE_MODE invocations with the skas branch. This leaves a number of trivial
functions which will be dealt with in a later patch.
There are some changes in the uaccess and tls support which go somewhat beyond
this and eliminate some of the now-redundant functions.
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/um/kernel/tlb.c')
-rw-r--r-- | arch/um/kernel/tlb.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/arch/um/kernel/tlb.c b/arch/um/kernel/tlb.c index 8a8d52851443..312e8ba30cd3 100644 --- a/arch/um/kernel/tlb.c +++ b/arch/um/kernel/tlb.c | |||
@@ -8,7 +8,6 @@ | |||
8 | #include "asm/pgalloc.h" | 8 | #include "asm/pgalloc.h" |
9 | #include "asm/pgtable.h" | 9 | #include "asm/pgtable.h" |
10 | #include "asm/tlbflush.h" | 10 | #include "asm/tlbflush.h" |
11 | #include "choose-mode.h" | ||
12 | #include "mode_kern.h" | 11 | #include "mode_kern.h" |
13 | #include "as-layout.h" | 12 | #include "as-layout.h" |
14 | #include "tlb.h" | 13 | #include "tlb.h" |
@@ -378,35 +377,31 @@ void flush_tlb_all(void) | |||
378 | 377 | ||
379 | void flush_tlb_kernel_range(unsigned long start, unsigned long end) | 378 | void flush_tlb_kernel_range(unsigned long start, unsigned long end) |
380 | { | 379 | { |
381 | CHOOSE_MODE_PROC(flush_tlb_kernel_range_tt, | 380 | flush_tlb_kernel_range_common(start, end); |
382 | flush_tlb_kernel_range_common, start, end); | ||
383 | } | 381 | } |
384 | 382 | ||
385 | void flush_tlb_kernel_vm(void) | 383 | void flush_tlb_kernel_vm(void) |
386 | { | 384 | { |
387 | CHOOSE_MODE(flush_tlb_kernel_vm_tt(), | 385 | flush_tlb_kernel_range_common(start_vm, end_vm); |
388 | flush_tlb_kernel_range_common(start_vm, end_vm)); | ||
389 | } | 386 | } |
390 | 387 | ||
391 | void __flush_tlb_one(unsigned long addr) | 388 | void __flush_tlb_one(unsigned long addr) |
392 | { | 389 | { |
393 | CHOOSE_MODE_PROC(__flush_tlb_one_tt, __flush_tlb_one_skas, addr); | 390 | __flush_tlb_one_skas(addr); |
394 | } | 391 | } |
395 | 392 | ||
396 | void flush_tlb_range(struct vm_area_struct *vma, unsigned long start, | 393 | void flush_tlb_range(struct vm_area_struct *vma, unsigned long start, |
397 | unsigned long end) | 394 | unsigned long end) |
398 | { | 395 | { |
399 | CHOOSE_MODE_PROC(flush_tlb_range_tt, flush_tlb_range_skas, vma, start, | 396 | flush_tlb_range_skas(vma, start, end); |
400 | end); | ||
401 | } | 397 | } |
402 | 398 | ||
403 | void flush_tlb_mm(struct mm_struct *mm) | 399 | void flush_tlb_mm(struct mm_struct *mm) |
404 | { | 400 | { |
405 | CHOOSE_MODE_PROC(flush_tlb_mm_tt, flush_tlb_mm_skas, mm); | 401 | flush_tlb_mm_skas(mm); |
406 | } | 402 | } |
407 | 403 | ||
408 | void force_flush_all(void) | 404 | void force_flush_all(void) |
409 | { | 405 | { |
410 | CHOOSE_MODE(force_flush_all_tt(), force_flush_all_skas()); | 406 | force_flush_all_skas(); |
411 | } | 407 | } |
412 | |||