Rev 2745 | Rev 3240 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 2745 | Rev 3222 | ||
|---|---|---|---|
| Line 267... | Line 267... | ||
| 267 | mem_backend_data_t *backend_data); |
267 | mem_backend_data_t *backend_data); |
| 268 | extern int as_area_destroy(as_t *as, uintptr_t address); |
268 | extern int as_area_destroy(as_t *as, uintptr_t address); |
| 269 | extern int as_area_resize(as_t *as, uintptr_t address, size_t size, int flags); |
269 | extern int as_area_resize(as_t *as, uintptr_t address, size_t size, int flags); |
| 270 | int as_area_share(as_t *src_as, uintptr_t src_base, size_t acc_size, |
270 | int as_area_share(as_t *src_as, uintptr_t src_base, size_t acc_size, |
| 271 | as_t *dst_as, uintptr_t dst_base, int dst_flags_mask); |
271 | as_t *dst_as, uintptr_t dst_base, int dst_flags_mask); |
| - | 272 | extern int as_area_change_flags(as_t *as, int flags, uintptr_t address); |
|
| 272 | 273 | ||
| 273 | extern int as_area_get_flags(as_area_t *area); |
274 | extern int as_area_get_flags(as_area_t *area); |
| 274 | extern bool as_area_check_access(as_area_t *area, pf_access_t access); |
275 | extern bool as_area_check_access(as_area_t *area, pf_access_t access); |
| 275 | extern size_t as_area_get_size(uintptr_t base); |
276 | extern size_t as_area_get_size(uintptr_t base); |
| 276 | extern int used_space_insert(as_area_t *a, uintptr_t page, count_t count); |
277 | extern int used_space_insert(as_area_t *a, uintptr_t page, count_t count); |
| Line 297... | Line 298... | ||
| 297 | /* Backend declarations and functions. */ |
298 | /* Backend declarations and functions. */ |
| 298 | extern mem_backend_t anon_backend; |
299 | extern mem_backend_t anon_backend; |
| 299 | extern mem_backend_t elf_backend; |
300 | extern mem_backend_t elf_backend; |
| 300 | extern mem_backend_t phys_backend; |
301 | extern mem_backend_t phys_backend; |
| 301 | 302 | ||
| - | 303 | /** |
|
| - | 304 | * This flags is passed when running the loader, otherwise elf_load() |
|
| - | 305 | * would return with a EE_LOADER error code. |
|
| - | 306 | */ |
|
| - | 307 | #define ELD_F_NONE 0 |
|
| - | 308 | #define ELD_F_LOADER 1 |
|
| - | 309 | ||
| 302 | extern unsigned int elf_load(elf_header_t *header, as_t *as); |
310 | extern unsigned int elf_load(elf_header_t *header, as_t *as, int flags); |
| 303 | 311 | ||
| 304 | /* Address space area related syscalls. */ |
312 | /* Address space area related syscalls. */ |
| 305 | extern unative_t sys_as_area_create(uintptr_t address, size_t size, int flags); |
313 | extern unative_t sys_as_area_create(uintptr_t address, size_t size, int flags); |
| 306 | extern unative_t sys_as_area_resize(uintptr_t address, size_t size, int flags); |
314 | extern unative_t sys_as_area_resize(uintptr_t address, size_t size, int flags); |
| - | 315 | extern unative_t sys_as_area_change_flags(uintptr_t address, int flags); |
|
| 307 | extern unative_t sys_as_area_destroy(uintptr_t address); |
316 | extern unative_t sys_as_area_destroy(uintptr_t address); |
| 308 | 317 | ||
| 309 | /* Introspection functions. */ |
318 | /* Introspection functions. */ |
| 310 | extern void as_print(as_t *as); |
319 | extern void as_print(as_t *as); |
| 311 | 320 | ||