Rev 11 | Rev 105 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 11 | Rev 34 | ||
---|---|---|---|
Line 125... | Line 125... | ||
125 | if (copy) { |
125 | if (copy) { |
126 | newpt = frame_alloc(FRAME_KA); |
126 | newpt = frame_alloc(FRAME_KA); |
127 | memcopy(pd[pde].frame_address << 12, newpt, PAGE_SIZE); |
127 | memcopy(pd[pde].frame_address << 12, newpt, PAGE_SIZE); |
128 | pd[pde].frame_address = newpt >> 12; |
128 | pd[pde].frame_address = newpt >> 12; |
129 | } |
129 | } |
- | 130 | ||
130 | pt = (struct page_specifier *) (pd[pde].frame_address << 12); |
131 | pt = (struct page_specifier *) (pd[pde].frame_address << 12); |
131 | 132 | ||
132 | pt[pte].frame_address = frame >> 12; |
133 | pt[pte].frame_address = frame >> 12; |
133 | pt[pte].present = !(flags & PAGE_NOT_PRESENT); |
134 | pt[pte].present = !(flags & PAGE_NOT_PRESENT); |
134 | pt[pte].page_cache_disable = !(flags & PAGE_CACHEABLE); |
135 | pt[pte].page_cache_disable = !(flags & PAGE_CACHEABLE); |