/branches/dynload/uspace/app/iloader/include/pcb.h |
---|
58,6 → 58,10 |
uintptr_t rtld_bias; |
} pcb_t; |
static inline __pcb_get(void) { |
return (pcb_t *)PCB_ADDRESS; |
} |
#endif |
/** |
/branches/dynload/uspace/app/iloader/elf_load.c |
---|
101,7 → 101,7 |
pcb_t *pcb; |
void *a; |
pcb = (pcb_t *)PCB_ADDRESS; |
pcb = __pcb_get(); |
a = as_area_create(pcb, sizeof(pcb_t), AS_AREA_READ | AS_AREA_WRITE); |
if (a == (void *)(-1)) { |
/branches/dynload/uspace/lib/rtld/rtld.c |
---|
63,7 → 63,7 |
dynamic_parse(runtime_env.rtld_dynamic, rtld->bias, &rtld->dyn); |
printf("Parse .dynamic section\n"); |
pcb = (pcb_t *)PCB_ADDRESS; |
pcb = __pcb_get(); |
dynamic_parse(pcb->dynamic, 0, &prog.dyn); |
prog.bias = 0; |
prog.dyn.soname = "[program]"; |
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c |
---|
76,7 → 76,7 |
size_t jmp_rel_entries; |
pcb_t *pcb; |
pcb = (pcb_t *)PCB_ADDRESS; |
pcb = __pcb_get(); |
/* The program loader (iloader) kindly provided us with these */ |
dynamic = pcb->rtld_dynamic; |