Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 3772 → Rev 3690

/branches/dynload/uspace/srv/loader/main.c
225,8 → 225,6
{
int rc;
 
printf("Load program '%s'\n", pathname);
 
rc = elf_load_file(pathname, 0, 0, &prog_info);
if (rc < 0) {
printf("Failed to load executable '%s'.\n", pathname);
234,17 → 232,11
return 1;
}
 
printf("Create PCB\n");
 
elf_create_pcb(&prog_info, &pcb);
 
printf("Fill args\n");
 
pcb.argc = argc;
pcb.argv = argv;
 
printf("Check interp\n");
 
if (prog_info.interp == NULL) {
/* Statically linked program */
is_dyn_linked = false;
290,7 → 282,6
program_run(interp_info.entry, &pcb);
 
} else {
printf("Run static program\n");
/* Statically linked program */
close_console();
ipc_answer_0(rid, EOK);
/branches/dynload/uspace/srv/loader/elf_load.c
306,13 → 306,10
printf("dynamic section found at 0x%x\n",
(uintptr_t)elf->info->dynamic);
break;
case 0x70000000:
/* FIXME: MIPS reginfo */
break;
case PT_SHLIB:
case PT_NOTE:
// case PT_LOPROC:
// case PT_HIPROC:
case PT_LOPROC:
case PT_HIPROC:
default:
printf("segment p_type %d unknown\n", entry->p_type);
return EE_UNSUPPORTED;
377,8 → 374,7
a = as_area_create((uint8_t *)base + bias, mem_sz,
AS_AREA_READ | AS_AREA_WRITE | AS_AREA_CACHEABLE);
if (a == (void *)(-1)) {
printf("memory mapping failed (0x%x, %d)\n",
base+bias, mem_sz);
printf("memory mapping failed\n");
return EE_MEMORY;
}