Changes in kernel/generic/src/proc/program.c [db675dd:692be1ae] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/src/proc/program.c
rdb675dd r692be1ae 80 80 kernel_uarg->uspace_uarg = NULL; 81 81 82 prg->loader_status = EE_OK;83 82 prg->task = task_create(as, name); 84 83 if (!prg->task) … … 112 111 * executable image. The task is returned in *task. 113 112 * 114 * @param[in] image_addr Address of an executable program image. 115 * @param[in] name Name to set for the program's task. 116 * @param[out] prg Buffer for storing program info. 117 * If image_addr points to a loader image, 118 * prg->task will be set to NULL and EOK 119 * will be returned. 113 * @param image_addr Address of an executable program image. 114 * @param name Name to set for the program's task. 115 * @param prg Buffer for storing program info. If image_addr 116 * points to a loader image, p->task will be set to 117 * NULL and EOK will be returned. 120 118 * 121 119 * @return EOK on success or negative error code. … … 128 126 return ENOMEM; 129 127 130 prg->loader_status = elf_load((elf_header_t *) image_addr, as, 0); 131 if (prg->loader_status != EE_OK) { 128 unsigned int rc = elf_load((elf_header_t *) image_addr, as, 0); 129 LOG("elf_load() -> %u\n", rc); 130 if (rc != EE_OK) { 132 131 as_destroy(as); 133 132 prg->task = NULL; 134 133 prg->main_thread = NULL; 135 134 136 if ( prg->loader_status!= EE_LOADER)135 if (rc != EE_LOADER) 137 136 return ENOTSUP; 138 137 … … 142 141 143 142 program_loader = image_addr; 144 printf("Program loader at %p\n", (void *) image_addr); 143 LOG("Registered program loader at %p", 144 (void *) image_addr); 145 145 146 146 return EOK; … … 172 172 } 173 173 174 prg->loader_status= elf_load((elf_header_t *) program_loader, as,174 unsigned int rc = elf_load((elf_header_t *) program_loader, as, 175 175 ELD_F_LOADER); 176 if ( prg->loader_status!= EE_OK) {176 if (rc != EE_OK) { 177 177 as_destroy(as); 178 printf("Cannot spawn loader (%s)\n", 179 elf_error(prg->loader_status)); 178 printf("Cannot spawn loader (%s)\n", elf_error(rc)); 180 179 return ENOENT; 181 180 }
Note:
See TracChangeset
for help on using the changeset viewer.