- Timestamp:
- 2006-01-19T22:17:47Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/fix-logger-deadlock, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 6461d67c
- Parents:
- 64c44e8
- Location:
- arch/ia32
- Files:
-
- 2 edited
-
include/mm/asid.h (modified) (2 diffs)
-
src/mm/tlb.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
arch/ia32/include/mm/asid.h
r64c44e8 r4512d7e 27 27 */ 28 28 29 /* 30 * ia32 has no hardware support for address space identifiers. 31 * This file is provided to do nop-implementation of mm/asid.h 32 * interface. 33 */ 34 29 35 #ifndef __ia32_ASID_H__ 30 36 #define __ia32_ASID_H__ … … 32 38 typedef int asid_t; 33 39 34 #define asid_get() 0 40 #define ASID_MAX_ARCH 0 41 42 #define asid_install(as) 35 43 36 44 #endif -
arch/ia32/src/mm/tlb.c
r64c44e8 r4512d7e 32 32 #include <arch/types.h> 33 33 34 /** Invalidate all TLB entries35 *36 * Invalidate all TLB entries.37 *38 * @param asid This argument is ignored.39 */40 void tlb_invalidate(asid_t asid)41 {42 write_cr3(read_cr3());43 }44 45 34 /** Invalidate all entries in TLB. */ 46 35 void tlb_invalidate_all(void) … … 58 47 } 59 48 60 /** Invalidate TLB entry for specified page belongsto specified address space.49 /** Invalidate TLB entry for specified page range belonging to specified address space. 61 50 * 62 51 * @param asid This parameter is ignored as the architecture doesn't support it. 63 * @param page Address of the page whose entry is to be invalidated. 52 * @param page Address of the first page whose entry is to be invalidated. 53 * @param cnt Number of entries to invalidate. 64 54 */ 65 void tlb_invalidate_page (asid_t asid, __address page)55 void tlb_invalidate_pages(asid_t asid, __address page, count_t cnt) 66 56 { 67 invlpg(page); 57 int i; 58 59 for (i = 0; i < cnt; i++) 60 invlpg(page + i * PAGE_SIZE); 68 61 }
Note:
See TracChangeset
for help on using the changeset viewer.
