Changeset 4512d7e in mainline for generic/include/mm/as.h
- Timestamp:
- 2006-01-19T22:17:47Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 6461d67c
- Parents:
- 64c44e8
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
generic/include/mm/as.h
r64c44e8 r4512d7e 49 49 #define UDATA_ADDRESS UDATA_ADDRESS_ARCH 50 50 51 #define AS_KERNEL (1<<0) /**< Kernel address space. */ 52 51 53 enum as_area_type { 52 54 AS_AREA_TEXT = 1, AS_AREA_DATA, AS_AREA_STACK … … 62 64 link_t link; 63 65 as_area_type_t type; 64 size_t size; /**< Size of this area . */66 size_t size; /**< Size of this area in multiples of PAGE_SIZE. */ 65 67 __address base; /**< Base address of this area. */ 66 68 index_t *mapping; /**< Map of physical frame numbers mapped to virtual page numbers in this area. */ … … 75 77 */ 76 78 struct as { 79 /** Protected by asidlock. Must be acquired before as-> lock. */ 80 link_t as_with_asid_link; 81 77 82 SPINLOCK_DECLARE(lock); 78 83 link_t as_area_head; … … 81 86 }; 82 87 83 extern as_t * as_create(pte_t *ptl0 );88 extern as_t * as_create(pte_t *ptl0, int flags); 84 89 extern as_area_t *as_area_create(as_t *as, as_area_type_t type, size_t size, __address base); 85 90 extern void as_area_set_mapping(as_area_t *a, index_t vpn, index_t pfn); … … 87 92 extern void as_install(as_t *m); 88 93 89 /* 90 * Each architecture should implement this function. 91 * Its main purpose is to do TLB purges according 92 * to architecture's requirements. Note that 93 * some architectures invalidate their TLB automatically 94 * on hardware address space switch (e.g. ia32 and 95 * amd64). 96 */ 94 /* Interface to be implemented by architectures. */ 97 95 #ifndef as_install_arch 98 96 extern void as_install_arch(as_t *as);
Note:
See TracChangeset
for help on using the changeset viewer.