Rev 1411 | Rev 1424 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1411 | Rev 1423 | ||
|---|---|---|---|
| Line 234... | Line 234... | ||
| 234 | elf_header_t *elf = (elf_header_t *) area->backend_data[0]; |
234 | elf_header_t *elf = (elf_header_t *) area->backend_data[0]; |
| 235 | elf_segment_header_t *entry = (elf_segment_header_t *) area->backend_data[1]; |
235 | elf_segment_header_t *entry = (elf_segment_header_t *) area->backend_data[1]; |
| 236 | __address base, frame; |
236 | __address base, frame; |
| 237 | index_t i; |
237 | index_t i; |
| 238 | 238 | ||
| - | 239 | if (!as_area_check_access(area, access)) |
|
| - | 240 | return AS_PF_FAULT; |
|
| - | 241 | ||
| 239 | ASSERT((addr >= entry->p_vaddr) && (addr < entry->p_vaddr + entry->p_memsz)); |
242 | ASSERT((addr >= entry->p_vaddr) && (addr < entry->p_vaddr + entry->p_memsz)); |
| 240 | i = (addr - entry->p_vaddr) >> PAGE_WIDTH; |
243 | i = (addr - entry->p_vaddr) >> PAGE_WIDTH; |
| 241 | base = (__address) (((void *) elf) + entry->p_offset); |
244 | base = (__address) (((void *) elf) + entry->p_offset); |
| 242 | ASSERT(ALIGN_UP(base, FRAME_SIZE) == base); |
245 | ASSERT(ALIGN_UP(base, FRAME_SIZE) == base); |
| 243 | 246 | ||