Changeset 98000fb in mainline for kernel/arch/amd64
- Timestamp:
- 2009-06-03T19:34:45Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 301ff30
- Parents:
- 69e68e3
- Location:
- kernel/arch/amd64
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/amd64/include/cpu.h
r69e68e3 r98000fb 65 65 tss_t *tss; 66 66 67 count_t iomapver_copy; /** Copy of TASK's I/O Permission bitmap generation count. */67 size_t iomapver_copy; /** Copy of TASK's I/O Permission bitmap generation count. */ 68 68 } cpu_arch_t; 69 69 -
kernel/arch/amd64/include/mm/page.h
r69e68e3 r98000fb 113 113 (write_cr3((uintptr_t) (ptl0))) 114 114 #define SET_PTL1_ADDRESS_ARCH(ptl0, i, a) \ 115 set_pt_addr((pte_t *) (ptl0), ( index_t) (i), a)115 set_pt_addr((pte_t *) (ptl0), (size_t) (i), a) 116 116 #define SET_PTL2_ADDRESS_ARCH(ptl1, i, a) \ 117 set_pt_addr((pte_t *) (ptl1), ( index_t) (i), a)117 set_pt_addr((pte_t *) (ptl1), (size_t) (i), a) 118 118 #define SET_PTL3_ADDRESS_ARCH(ptl2, i, a) \ 119 set_pt_addr((pte_t *) (ptl2), ( index_t) (i), a)119 set_pt_addr((pte_t *) (ptl2), (size_t) (i), a) 120 120 #define SET_FRAME_ADDRESS_ARCH(ptl3, i, a) \ 121 set_pt_addr((pte_t *) (ptl3), ( index_t) (i), a)121 set_pt_addr((pte_t *) (ptl3), (size_t) (i), a) 122 122 123 123 /* Get PTE flags accessors for each level. */ 124 124 #define GET_PTL1_FLAGS_ARCH(ptl0, i) \ 125 get_pt_flags((pte_t *) (ptl0), ( index_t) (i))125 get_pt_flags((pte_t *) (ptl0), (size_t) (i)) 126 126 #define GET_PTL2_FLAGS_ARCH(ptl1, i) \ 127 get_pt_flags((pte_t *) (ptl1), ( index_t) (i))127 get_pt_flags((pte_t *) (ptl1), (size_t) (i)) 128 128 #define GET_PTL3_FLAGS_ARCH(ptl2, i) \ 129 get_pt_flags((pte_t *) (ptl2), ( index_t) (i))129 get_pt_flags((pte_t *) (ptl2), (size_t) (i)) 130 130 #define GET_FRAME_FLAGS_ARCH(ptl3, i) \ 131 get_pt_flags((pte_t *) (ptl3), ( index_t) (i))131 get_pt_flags((pte_t *) (ptl3), (size_t) (i)) 132 132 133 133 /* Set PTE flags accessors for each level. */ 134 134 #define SET_PTL1_FLAGS_ARCH(ptl0, i, x) \ 135 set_pt_flags((pte_t *) (ptl0), ( index_t) (i), (x))135 set_pt_flags((pte_t *) (ptl0), (size_t) (i), (x)) 136 136 #define SET_PTL2_FLAGS_ARCH(ptl1, i, x) \ 137 set_pt_flags((pte_t *) (ptl1), ( index_t) (i), (x))137 set_pt_flags((pte_t *) (ptl1), (size_t) (i), (x)) 138 138 #define SET_PTL3_FLAGS_ARCH(ptl2, i, x) \ 139 set_pt_flags((pte_t *) (ptl2), ( index_t) (i), (x))139 set_pt_flags((pte_t *) (ptl2), (size_t) (i), (x)) 140 140 #define SET_FRAME_FLAGS_ARCH(ptl3, i, x) \ 141 set_pt_flags((pte_t *) (ptl3), ( index_t) (i), (x))141 set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x)) 142 142 143 143 /* Macros for querying the last-level PTE entries. */ … … 177 177 #define PFERR_CODE_ID (1 << 4) 178 178 179 static inline int get_pt_flags(pte_t *pt, index_t i)179 static inline int get_pt_flags(pte_t *pt, size_t i) 180 180 { 181 181 pte_t *p = &pt[i]; … … 190 190 } 191 191 192 static inline void set_pt_addr(pte_t *pt, index_t i, uintptr_t a)192 static inline void set_pt_addr(pte_t *pt, size_t i, uintptr_t a) 193 193 { 194 194 pte_t *p = &pt[i]; … … 198 198 } 199 199 200 static inline void set_pt_flags(pte_t *pt, index_t i, int flags)200 static inline void set_pt_flags(pte_t *pt, size_t i, int flags) 201 201 { 202 202 pte_t *p = &pt[i]; -
kernel/arch/amd64/include/proc/task.h
r69e68e3 r98000fb 41 41 typedef struct { 42 42 /** I/O Permission bitmap Generation counter. */ 43 count_t iomapver;43 size_t iomapver; 44 44 /** I/O Permission bitmap. */ 45 45 bitmap_t iomap; -
kernel/arch/amd64/include/types.h
r69e68e3 r98000fb 47 47 48 48 typedef uint64_t size_t; 49 typedef uint64_t count_t;50 typedef uint64_t index_t;51 49 52 50 typedef uint64_t uintptr_t; … … 61 59 } fncptr_t; 62 60 63 /**< Formats for uintptr_t, size_t , count_t and index_t*/61 /**< Formats for uintptr_t, size_t */ 64 62 #define PRIp "llx" 65 63 #define PRIs "llu" 66 #define PRIc "llu"67 #define PRIi "llu"68 64 69 65 /**< Formats for (u)int8_t, (u)int16_t, (u)int32_t, (u)int64_t and (u)native_t */ -
kernel/arch/amd64/src/ddi/ddi.c
r69e68e3 r98000fb 57 57 int ddi_iospace_enable_arch(task_t *task, uintptr_t ioaddr, size_t size) 58 58 { 59 count_t bits;59 size_t bits; 60 60 61 61 bits = ioaddr + size; … … 99 99 * Enable the range and we are done. 100 100 */ 101 bitmap_clear_range(&task->arch.iomap, ( index_t) ioaddr, (count_t) size);101 bitmap_clear_range(&task->arch.iomap, (size_t) ioaddr, (size_t) size); 102 102 103 103 /* … … 118 118 void io_perm_bitmap_install(void) 119 119 { 120 count_t bits;120 size_t bits; 121 121 ptr_16_64_t cpugdtr; 122 122 descriptor_t *gdt_p; 123 123 tss_descriptor_t *tss_desc; 124 count_t ver;124 size_t ver; 125 125 126 126 /* First, copy the I/O Permission Bitmap. */ -
kernel/arch/amd64/src/interrupt.c
r69e68e3 r98000fb 102 102 { 103 103 if (TASK) { 104 count_t ver;104 size_t ver; 105 105 106 106 spinlock_lock(&TASK->lock);
Note:
See TracChangeset
for help on using the changeset viewer.