Rev 1064 | Rev 1423 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1064 | Rev 1411 | ||
---|---|---|---|
Line 104... | Line 104... | ||
104 | #define PTE_PRESENT_ARCH(p) ((p)->present != 0) |
104 | #define PTE_PRESENT_ARCH(p) ((p)->present != 0) |
105 | #define PTE_GET_FRAME_ARCH(p) ((((__address)(p)->addr_12_31)<<12) | ((__address)(p)->addr_32_51<<32)) |
105 | #define PTE_GET_FRAME_ARCH(p) ((((__address)(p)->addr_12_31)<<12) | ((__address)(p)->addr_32_51<<32)) |
106 | 106 | ||
107 | #ifndef __ASM__ |
107 | #ifndef __ASM__ |
108 | 108 | ||
- | 109 | /* Page fault error codes. */ |
|
- | 110 | ||
- | 111 | /** When bit on this position is 0, the page fault was caused by a not-present page. */ |
|
- | 112 | #define PFERR_CODE_P (1<<0) |
|
- | 113 | ||
- | 114 | /** When bit on this position is 1, the page fault was caused by a write. */ |
|
- | 115 | #define PFERR_CODE_RW (1<<1) |
|
- | 116 | ||
- | 117 | /** When bit on this position is 1, the page fault was caused in user mode. */ |
|
- | 118 | #define PFERR_CODE_US (1<<2) |
|
- | 119 | ||
- | 120 | /** When bit on this position is 1, a reserved bit was set in page directory. */ |
|
- | 121 | #define PFERR_CODE_RSVD (1<<3) |
|
- | 122 | ||
- | 123 | /** When bit on this position os 1, the page fault was caused during instruction fecth. */ |
|
- | 124 | #define PFERR_CODE_ID (1<<4) |
|
- | 125 | ||
109 | /** Page Table Entry. */ |
126 | /** Page Table Entry. */ |
110 | struct page_specifier { |
127 | struct page_specifier { |
111 | unsigned present : 1; |
128 | unsigned present : 1; |
112 | unsigned writeable : 1; |
129 | unsigned writeable : 1; |
113 | unsigned uaccessible : 1; |
130 | unsigned uaccessible : 1; |