Changeset 3e828ea in mainline for kernel/generic/src/proc/program.c


Ignore:
Timestamp:
2019-09-23T12:49:29Z (6 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
9be2358
Parents:
9259d20 (diff), 1a4ec93f (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
Jiri Svoboda <jiri@…> (2019-09-22 12:49:07)
git-committer:
Jiri Svoboda <jiri@…> (2019-09-23 12:49:29)
Message:

Merge changes from master, especially Meson build

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/proc/program.c

    r9259d20 r3e828ea  
    4848#include <security/perm.h>
    4949#include <lib/elf_load.h>
    50 #include <errno.h>
     50#include <str.h>
    5151#include <log.h>
    5252#include <syscall/copy.h>
     
    6969 *
    7070 */
    71 errno_t program_create(as_t *as, uintptr_t entry_addr, char *name, program_t *prg)
     71errno_t program_create(as_t *as, uspace_addr_t entry_addr, char *name, program_t *prg)
    7272{
    7373        uspace_arg_t *kernel_uarg = (uspace_arg_t *)
     
    7676                return ENOMEM;
    7777
    78         prg->loader_status = EE_OK;
     78        prg->loader_status = EOK;
    7979        prg->task = task_create(as, name);
    8080        if (!prg->task) {
     
    8686         * Create the stack address space area.
    8787         */
    88         uintptr_t virt = (uintptr_t) -1;
     88        uintptr_t virt = (uintptr_t) AS_AREA_ANY;
    8989        uintptr_t bound = USER_ADDRESS_SPACE_END - (STACK_SIZE_USER - 1);
    9090
     
    103103        }
    104104
    105         kernel_uarg->uspace_entry = (void *) entry_addr;
    106         kernel_uarg->uspace_stack = (void *) virt;
     105        kernel_uarg->uspace_entry = entry_addr;
     106        kernel_uarg->uspace_stack = virt;
    107107        kernel_uarg->uspace_stack_size = STACK_SIZE_USER;
    108         kernel_uarg->uspace_thread_function = NULL;
    109         kernel_uarg->uspace_thread_arg = NULL;
    110         kernel_uarg->uspace_uarg = NULL;
     108        kernel_uarg->uspace_thread_function = USPACE_NULL;
     109        kernel_uarg->uspace_thread_arg = USPACE_NULL;
     110        kernel_uarg->uspace_uarg = USPACE_NULL;
    111111
    112112        /*
     
    149149
    150150        prg->loader_status = elf_load((elf_header_t *) image_addr, as);
    151         if (prg->loader_status != EE_OK) {
     151        if (prg->loader_status != EOK) {
    152152                as_release(as);
    153153                prg->task = NULL;
     
    183183
    184184        prg->loader_status = elf_load((elf_header_t *) program_loader, as);
    185         if (prg->loader_status != EE_OK) {
     185        if (prg->loader_status != EOK) {
    186186                as_release(as);
    187187                log(LF_OTHER, LVL_ERROR, "Cannot spawn loader (%s)",
    188                     elf_error(prg->loader_status));
     188                    str_error(prg->loader_status));
    189189                return ENOENT;
    190190        }
     
    218218 *
    219219 */
    220 sys_errno_t sys_program_spawn_loader(char *uspace_name, size_t name_len)
     220sys_errno_t sys_program_spawn_loader(uspace_ptr_char uspace_name, size_t name_len)
    221221{
    222222        /* Cap length of name and copy it from userspace. */
Note: See TracChangeset for help on using the changeset viewer.