Ignore:
Timestamp:
May 3, 2018, 5:51:22 PM (4 years ago)
Author:
alain
Message:

1/ Fix a bug in the Multithreaded "sort" applicationr:
The pthread_create() arguments must be declared as global variables.
2/ The exit syscall can be called by any thread of a process..

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/syscalls/sys_wait.c

    r438 r440  
    22 * sys_wait.c - wait termination or blocking of a child process.
    33 *
    4  * Author    Alain Greiner (2016,2017)
     4 * Author    Alain Greiner (2016,2017,2018)
    55 * 
    66 * Copyright (c) UPMC Sorbonne Universites
     
    3535{
    3636        error_t     error;
    37     paddr_t     paddr;
     37    vseg_t    * vseg;
    3838    xptr_t      iter_xp;
    3939    xptr_t      child_xp;
     
    5959
    6060    // check status in user space
    61     error = vmm_v2p_translate( false , status , &paddr );
     61    error = vmm_get_vseg( process, (intptr_t)status , &vseg );
    6262
    6363        if( error )
     
    6565
    6666#if DEBUG_SYSCALLS_ERROR
    67 printk("\n[ERROR] in %s : status buffer unmapped for thread %x in process %x\n",
    68 __FUNCTION__ , this->trdid , process->pid );
     67printk("\n[ERROR] in %s : status buffer %x unmapped for thread %x in process %x\n",
     68__FUNCTION__ , (intptr_t)status, this->trdid , process->pid );
     69vmm_display( process , false );
    6970#endif
    7071        this->errno = EINVAL;
Note: See TracChangeset for help on using the changeset viewer.