Changeset 473 for trunk/kernel


Ignore:
Timestamp:
Aug 21, 2018, 6:01:01 PM (3 years ago)
Author:
alain
Message:

Fix several GCC warning related to the -Wextra compilation option.

Location:
trunk/kernel
Files:
2 deleted
21 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/Makefile

    r457 r473  
    8686              build/kern/dqdt.o            \
    8787              build/kern/do_syscall.o      \
    88               build/kern/do_interrupt.o    \
    8988              build/kern/rpc.o
    9089
  • trunk/kernel/fs/fatfs.c

    r463 r473  
    5555//////////////////////////////////////////////////////////////////////////////////////////
    5656
    57 static inline int get_length( int offset , int length ) { return length; }
    58 
    59 static inline int get_offset( int offset , int length ) { return offset; }
     57static inline int get_length( int offset , int length ) { if( offset + 1 ) return length; }
     58
     59static inline int get_offset( int offset , int length ) { if( length + 1 ) return offset; }
    6060
    6161
  • trunk/kernel/fs/vfs.c

    r459 r473  
    9494    uint32_t lid = bitmap_ffc( ctx->bitmap , CONFIG_VFS_MAX_INODES );
    9595
    96     if( lid == -1 )   // no more free slot => error
     96    if( lid == 0xFFFFFFFF )   // no more free slot => error
    9797    {
    9898        // release lock
     
    321321    // get inode cluster and local pointer
    322322    cxy_t         inode_cxy = GET_CXY( inode_xp );
    323     vfs_inode_t * inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     323    vfs_inode_t * inode_ptr = GET_PTR( inode_xp );
    324324
    325325    hal_remote_atomic_add( XPTR( inode_cxy , &inode_ptr->refcount ) , 1 );   
     
    331331    // get inode cluster and local pointer
    332332    cxy_t         inode_cxy = GET_CXY( inode_xp );
    333     vfs_inode_t * inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     333    vfs_inode_t * inode_ptr = GET_PTR( inode_xp );
    334334
    335335    hal_remote_atomic_add( XPTR( inode_cxy , &inode_ptr->refcount ) , -1 );   
     
    341341    // get inode cluster and local pointer
    342342    cxy_t         cxy = GET_CXY( inode_xp );
    343     vfs_inode_t * ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     343    vfs_inode_t * ptr = GET_PTR( inode_xp );
    344344
    345345    // get size
     
    356356    // get inode cluster and local pointer
    357357    cxy_t         cxy = GET_CXY( inode_xp );
    358     vfs_inode_t * ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     358    vfs_inode_t * ptr = GET_PTR( inode_xp );
    359359
    360360    // set size
     
    369369    // get inode cluster and local pointer
    370370    cxy_t         cxy = GET_CXY( inode_xp );
    371     vfs_inode_t * ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     371    vfs_inode_t * ptr = GET_PTR( inode_xp );
    372372
    373373    // release the main lock
     
    380380    // get inode cluster and local pointer
    381381    cxy_t         cxy = GET_CXY( inode_xp );
    382     vfs_inode_t * ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     382    vfs_inode_t * ptr = GET_PTR( inode_xp );
    383383
    384384    // get the main lock
     
    398398    // get inode cluster and local pointer
    399399    inode_cxy = GET_CXY( inode_xp );
    400     inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     400    inode_ptr = GET_PTR( inode_xp );
    401401
    402402    // get parent dentry
     
    411411    {
    412412        dentry_cxy = GET_CXY( dentry_xp );
    413         dentry_ptr = (vfs_dentry_t *)GET_PTR( dentry_xp );
     413        dentry_ptr = GET_PTR( dentry_xp );
    414414
    415415        hal_remote_strcpy( XPTR( local_cxy  , name ) ,
     
    641641    xptr_t        file_xp;      // extended pointer on created file descriptor
    642642    uint32_t      file_id;      // created file descriptor index in reference fd_array
     643
     644    assert( (mode == 0), __FUNCTION__,
     645    "the mode parameter is not supported yet\n" );
    643646
    644647#if DEBUG_VFS_OPEN
     
    670673    // get target inode cluster and local pointer
    671674    inode_cxy = GET_CXY( inode_xp );
    672     inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     675    inode_ptr = GET_PTR( inode_xp );
    673676   
    674677    // create a new file descriptor in cluster containing inode
     
    721724    // get cluster and local pointer on remote file descriptor
    722725    file_cxy  = GET_CXY( file_xp );
    723     file_ptr  = (vfs_file_t *)GET_PTR( file_xp );
     726    file_ptr  = GET_PTR( file_xp );
    724727
    725728    // get inode type from remote file descriptor
     
    776779    // get cluster and local pointer on remote file descriptor
    777780    file_cxy  = GET_CXY( file_xp );
    778     file_ptr  = (vfs_file_t *)GET_PTR( file_xp );
     781    file_ptr  = GET_PTR( file_xp );
    779782
    780783    // get inode type from remote file descriptor
     
    836839    // get cluster and local pointer on remote file descriptor
    837840    file_cxy = GET_CXY( file_xp );
    838     file_ptr = (vfs_file_t *)GET_PTR( file_xp );
     841    file_ptr = GET_PTR( file_xp );
    839842
    840843    // build extended pointers on lock and offset
     
    993996                    char   * path )
    994997{
    995     assert( false , __FUNCTION__ , "not implemented\n" );
     998    assert( false , __FUNCTION__ , "not implemented\n", cwd_xp, path );
    996999    return 0;
    9971000}
     
    10011004                  struct stat * k_stat )
    10021005{
    1003     assert( false , __FUNCTION__ , "not implemented\n" );
     1006    assert( false , __FUNCTION__ , "not implemented\n", file_xp, k_stat );
    10041007    return 0;
    10051008}
     
    10091012                     struct dirent * k_dirent )
    10101013{
    1011     assert( false , __FUNCTION__ , "not implemented\n" );
     1014    assert( false , __FUNCTION__ , "not implemented\n", file_xp, k_dirent );
    10121015    return 0;
    10131016}
     
    10181021                   uint32_t   mode )
    10191022{
    1020     assert( false , __FUNCTION__ , "not implemented\n" );
     1023    assert( false , __FUNCTION__ , "not implemented\n", file_xp, path, mode );
    10211024    return 0;
    10221025}
     
    10261029                   char   * path )
    10271030{
    1028     assert( false , __FUNCTION__ , "not implemented\n" );
     1031    assert( false , __FUNCTION__ , "not implemented\n", file_xp, path );
    10291032    return 0;
    10301033}
     
    10511054    // get inode cluster and local pointer
    10521055    inode_cxy = GET_CXY( inode_xp );
    1053     inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     1056    inode_ptr = GET_PTR( inode_xp );
    10541057
    10551058    // get inode type from remote file
     
    10751078    cxy_t             inode_cxy;    // inode cluster identifier       
    10761079    vfs_inode_t     * inode_ptr;    // inode local pointer
    1077     uint32_t          mode;         // lookup working mode
    10781080    vfs_inode_type_t  inode_type;   // target inode type
    10791081
    10801082    // set lookup working mode
    1081     mode = 0;
     1083    assert( (rights == 0), __FUNCTION__,
     1084    "access rights non implemented yet\n" );
    10821085 
    10831086    // get extended pointer on target inode
    1084     error = vfs_lookup( cwd_xp , path , mode , &inode_xp );
     1087    error = vfs_lookup( cwd_xp , path , 0 , &inode_xp );
    10851088
    10861089    if( error ) return error;
     
    10881091    // get inode cluster and local pointer
    10891092    inode_cxy = GET_CXY( inode_xp );
    1090     inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     1093    inode_ptr = GET_PTR( inode_xp );
    10911094   
    10921095    // get inode type from remote inode
     
    11031106                    uint32_t rights )
    11041107{
    1105     assert( false , __FUNCTION__ , "not implemented\n" );
     1108    assert( false , __FUNCTION__ , "not implemented\n", cwd_xp, path, rights );
    11061109    return 0;
    11071110}
     
    11331136static void vfs_recursive_display( xptr_t   inode_xp,
    11341137                                   xptr_t   name_xp,
    1135                                    xptr_t   dentry_xp,
    11361138                                   uint32_t indent )
    11371139{
     
    11721174    // get inode cluster and local pointer
    11731175    inode_cxy = GET_CXY( inode_xp );
    1174     inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     1176    inode_ptr = GET_PTR( inode_xp );
    11751177
    11761178    // get inode type
     
    12041206            // get dentry cluster and local pointer
    12051207            child_dentry_cxy = GET_CXY( child_dentry_xp );
    1206             child_dentry_ptr = (vfs_dentry_t *)GET_PTR( child_dentry_xp );
     1208            child_dentry_ptr = GET_PTR( child_dentry_xp );
    12071209
    12081210            // get extended pointer on child inode
     
    12161218            vfs_recursive_display( child_inode_xp,
    12171219                                   child_dentry_name_xp,
    1218                                    child_dentry_xp,
    12191220                                   indent+1 );
    12201221
     
    12391240    // get target inode cluster and local pointer
    12401241    cxy_t         inode_cxy = GET_CXY( inode_xp );
    1241     vfs_inode_t * inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     1242    vfs_inode_t * inode_ptr = GET_PTR( inode_xp );
    12421243
    12431244    // get extended pointer on associated dentry
     
    12541255        // get dentry cluster and local pointer
    12551256        dentry_cxy = GET_CXY( dentry_xp );
    1256         dentry_ptr = (vfs_dentry_t *)GET_PTR( dentry_xp );
     1257        dentry_ptr = GET_PTR( dentry_xp );
    12571258
    12581259        // get extended pointer on dentry name
     
    12751276
    12761277    // call recursive function
    1277     vfs_recursive_display( inode_xp , name_xp , dentry_xp , 0 );
     1278    vfs_recursive_display( inode_xp , name_xp , 0 );
    12781279
    12791280    // release lock
     
    12991300    // get found inode cluster and local pointer
    13001301    cxy_t         inode_cxy = GET_CXY( inode_xp );
    1301     vfs_inode_t * inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     1302    vfs_inode_t * inode_ptr = GET_PTR( inode_xp );
    13021303
    13031304    // get inode access mode, UID, and GID
     
    13311332    // get parent inode cluster and local pointer
    13321333    cxy_t         parent_cxy = GET_CXY( parent_xp );
    1333     vfs_inode_t * parent_ptr = (vfs_inode_t *)GET_PTR( parent_xp );
     1334    vfs_inode_t * parent_ptr = GET_PTR( parent_xp );
    13341335
    13351336    // get extended pointer on hash table of children directory entries
     
    13431344    // get dentry cluster and local pointer
    13441345    cxy_t          dentry_cxy = GET_CXY( dentry_xp );
    1345     vfs_dentry_t * dentry_ptr = (vfs_dentry_t *)GET_PTR( dentry_xp );
     1346    vfs_dentry_t * dentry_ptr = GET_PTR( dentry_xp );
    13461347
    13471348    // return child inode
     
    17011702        // get inode cluster and local pointer
    17021703        cxy_t         inode_cxy = GET_CXY( inode_xp );
    1703         vfs_inode_t * inode_ptr = (vfs_inode_t *)GET_PTR( inode_xp );
     1704        vfs_inode_t * inode_ptr = GET_PTR( inode_xp );
    17041705
    17051706        // get extended pointer on parent dentry               
     
    17081709        // get dentry cluster and local pointer
    17091710        cxy_t          dentry_cxy = GET_CXY( dentry_xp );
    1710         vfs_dentry_t * dentry_ptr = (vfs_dentry_t *)GET_PTR( dentry_xp );
     1711        vfs_dentry_t * dentry_ptr = GET_PTR( dentry_xp );
    17111712
    17121713        // get dentry name length and pointer
     
    18641865    // 3. update extended pointer on inode in dentry
    18651866    cxy_t          dentry_cxy = GET_CXY( dentry_xp );
    1866     vfs_dentry_t * dentry_ptr = (vfs_dentry_t *)GET_PTR( dentry_xp );
     1867    vfs_dentry_t * dentry_ptr = GET_PTR( dentry_xp );
    18671868    hal_remote_swd( XPTR( dentry_cxy , &dentry_ptr->child_xp ) , inode_xp );
    18681869
  • trunk/kernel/kern/do_syscall.c

    r457 r473  
    180180
    181181    // update user time
    182         thread_user_time_update( this );
     182        thread_time_update( this , 1 ); 
    183183
    184184    // check syscall index
     
    204204
    205205    // update kernel time
    206         thread_kernel_time_update( this );
     206        thread_time_update( this , 0 );
    207207
    208208        return error;
  • trunk/kernel/kern/rpc.c

    r459 r473  
    11081108    rpc_send( cxy , &rpc );
    11091109
     1110    // get output argument from RPC descriptor
     1111    *error = (error_t)rpc.args[1];
     1112
    11101113#if DEBUG_RPC_VFS_INODE_DESTROY
    11111114uint32_t cycle = (uint32_t)hal_get_cycles();
     
    12481251/////////////////////////////////////////////////////////////////////////////////////////
    12491252
    1250 
    12511253///////////////////////////////////////////////////////
    12521254void rpc_vfs_dentry_destroy_client( cxy_t          cxy,
     
    12741276    // register RPC request in remote RPC fifo
    12751277    rpc_send( cxy , &rpc );
     1278
     1279    // get output argument from RPC descriptor
     1280    *error = (error_t)rpc.args[1];
    12761281
    12771282#if DEBUG_RPC_VFS_DENTRY_DESTROY
  • trunk/kernel/kern/thread.c

    r469 r473  
    528528        if( error )
    529529        {
    530             vseg_detach( &child_process->vmm , vseg );
     530            vseg_detach( vseg );
    531531            vseg_free( vseg );
    532532            thread_release( child_ptr );
     
    549549            // increment the forks counter
    550550            remote_spinlock_lock( lock_xp ); 
    551             hal_remote_atomic_add( XPTR( page_cxy , &page_ptr->forks ) , 1 );
     551            hal_remote_atomic_add( forks_xp , 1 );
    552552            remote_spinlock_unlock( lock_xp ); 
    553553
     
    11301130
    11311131
    1132 /////////////////////////////////////////////////
    1133 void thread_user_time_update( thread_t * thread )
    1134 {
    1135     // TODO
    1136     // printk("\n[WARNING] function %s not implemented\n", __FUNCTION__ );
    1137 }
    1138 
    1139 ///////////////////////////////////////////////////
    1140 void thread_kernel_time_update( thread_t * thread )
    1141 {
    1142     // TODO
    1143     // printk("\n[WARNING] function %s not implemented\n", __FUNCTION__ );
     1132///////////////////////////////////////////
     1133void thread_time_update( thread_t * thread,
     1134                         uint32_t   is_user )
     1135{
     1136    cycle_t current_cycle;   // current cycle counter value
     1137    cycle_t last_cycle;      // last cycle counter value
     1138
     1139    // get pointer on thread_info structure
     1140    thread_info_t * info = &thread->info;
     1141
     1142    // get last cycle counter value
     1143    last_cycle = info->last_cycle;
     1144
     1145    // get current cycle counter value
     1146    current_cycle = hal_get_cycles();
     1147
     1148    // update thread_info structure
     1149    info->last_cycle = current_cycle;
     1150
     1151    // update time in thread_info
     1152    if( is_user ) info->usr_cycles += (current_cycle - last_cycle);
     1153    else          info->sys_cycles += (current_cycle - last_cycle);
    11441154}
    11451155
  • trunk/kernel/kern/thread.h

    r459 r473  
    103103        uint32_t              u_err_nr;      /*! TODO ???  [AG]                           */
    104104        uint32_t              m_err_nr;      /*! TODO ???  [AG]                           */
    105         uint32_t              tm_tmp;        /*! temp date to compute execution duration  */
    106         uint32_t              tm_exec;       /*! TODO ???  [AG]                           */
    107         uint32_t              tm_create;     /*! date of the creation                     */
    108         uint32_t              tm_born;       /*! date of the thread loading               */
    109         uint32_t              tm_dead;       /*! date of the death                        */
    110         cycle_t               tm_sleep;      /*! TODO ???  [AG]                           */
    111         cycle_t               tm_wait;       /*! TODO ???  [AG]                           */
    112         cycle_t               tm_usr;        /*! user execution duration                  */
    113         cycle_t               tm_sys;        /*! system execution duration                */
     105        cycle_t               last_cycle;    /*! last cycle counter value (date)          */
     106        cycle_t               usr_cycles;    /*! user execution duration (cycles)         */
     107        cycle_t               sys_cycles;    /*! system execution duration (cycles)       */
    114108}
    115109thread_info_t;
     
    435429
    436430/***************************************************************************************
    437  * This function updates the calling thread user_time counter, and resets the thread
    438  * cycles counter.
    439  * TODO This function is not implemented.
     431 * This function updates the calling thread user_time or kernel_time counters.
    440432 ***************************************************************************************
    441433 * @ thread   : local pointer on target thread.
    442  **************************************************************************************/
    443 void thread_user_time_update( thread_t * thread );
    444 
    445 /**************************************************************************************n
    446  * This function updates the calling thread kernel_time counter, and resets the thread
    447  * cycles counter.
    448  * TODO This function is not implemented.
    449  ***************************************************************************************
    450  * @ thread   : local pointer on target thread.
    451  **************************************************************************************/
    452 void thread_kernel_time_update( thread_t * thread );
     434 * @ is_user  : update user time if non zero / update kernel time if zero
     435 **************************************************************************************/
     436void thread_time_update( thread_t * thread,
     437                         uint32_t   is_user );
    453438
    454439/***************************************************************************************
  • trunk/kernel/libk/bits.c

    r457 r473  
    8181                if((len + bit) >= 32)
    8282                {
    83                         val = (bit == 0) ? 0xFFFFFFFF : (1 << (32 - bit)) - 1;
     83            if( bit == 0 ) val = 0xFFFFFFFF;
     84            else           val = (uint32_t)((1 << (32 - bit)) - 1);
     85
    8486                        bitmap[word] |= (val << bit);
    8587                        word++;
     
    108110                if((len + bit) >= 32)
    109111                {
    110                         val = (bit == 0) ? 0xFFFFFFFF : (1 << (32 - bit)) - 1;
     112            if( bit == 0 ) val = 0xFFFFFFFF;
     113            else           val = (uint32_t)((1 << (32 - bit)) - 1);
     114
    111115                        bitmap[word] &= ~(val << bit);
    112116                        word++;
  • trunk/kernel/libk/grdxt.c

    r457 r473  
    7373        req.type = KMEM_GENERIC;
    7474
    75         for( ix1=0 ; ix1 < (1 << w1) ; ix1++ )
     75        for( ix1=0 ; ix1 < (uint32_t)(1 << w1) ; ix1++ )
    7676        {
    7777        ptr2 = ptr1[ix1];
     
    7979                if( ptr2 == NULL ) continue;
    8080
    81         for( ix2=0 ; ix2 < (1 << w2) ; ix2++ )
     81        for( ix2=0 ; ix2 < (uint32_t)(1 << w2) ; ix2++ )
    8282        {
    8383            ptr3 = ptr2[ix2];
     
    129129           name, 1<<w1 , 1<<w2 , 1<<w3 );
    130130
    131         for( ix1=0 ; ix1 < (1<<w1) ; ix1++ )
     131        for( ix1=0 ; ix1 < (uint32_t)(1<<w1) ; ix1++ )
    132132        {
    133133        ptr2 = ptr1[ix1];
    134134        if( ptr2 == NULL )  continue;
    135135   
    136         for( ix2=0 ; ix2 < (1<<w2) ; ix2++ )
     136        for( ix2=0 ; ix2 < (uint32_t)(1<<w2) ; ix2++ )
    137137        {
    138138            ptr3 = ptr2[ix2];
    139139            if( ptr3 == NULL ) continue;
    140140
    141             for( ix3=0 ; ix3 < (1<<w3) ; ix3++ )
     141            for( ix3=0 ; ix3 < (uint32_t)(1<<w3) ; ix3++ )
    142142            {
    143143                value = (intptr_t)ptr3[ix3];
  • trunk/kernel/libk/spinlock.c

    r461 r473  
    4747///////////////////////////////////////////
    4848void spinlock_lock_busy( spinlock_t * lock,
    49                          uint32_t   * irq_state )
     49                         reg_t      * irq_state )
    5050{
    5151    reg_t               mode;
     
    8282//////////////////////////////////////////////
    8383void spinlock_unlock_busy( spinlock_t * lock,
    84                            uint32_t     irq_state )
     84                           reg_t        irq_state )
    8585{
    8686    thread_t * this = CURRENT_THREAD;
  • trunk/kernel/mm/vmm.c

    r469 r473  
    718718
    719719        // remove vseg from VSL
    720                 vseg_detach( vmm , vseg );
     720                vseg_detach( vseg );
    721721
    722722        // release memory allocated to vseg descriptor
     
    747747__FUNCTION__ , vseg_type_str( vseg->type ), vseg->vpn_base, vseg->vpn_size );
    748748#endif
    749                     vseg_detach( vmm , vseg );
     749                    vseg_detach( vseg );
    750750            vseg_free( vseg );
    751751
     
    10221022    // get pointers on calling process and VMM
    10231023    thread_t   * this    = CURRENT_THREAD;
    1024     process_t  * process = this->process;
    10251024    vmm_t      * vmm     = &this->process->vmm;
    10261025    uint32_t     type    = vseg->type;
     
    10291028    xptr_t lock_xp = XPTR( local_cxy , &vmm->vsegs_lock );
    10301029        remote_rwlock_wr_lock( lock_xp );
    1031         vseg_detach( &process->vmm , vseg );
     1030        vseg_detach( vseg );
    10321031        remote_rwlock_wr_unlock( lock_xp );
    10331032
  • trunk/kernel/mm/vseg.c

    r457 r473  
    209209}
    210210
    211 ///////////////////////////////
    212 void vseg_detach( vmm_t  * vmm,
    213                   vseg_t * vseg )
     211/////////////////////////////////
     212void vseg_detach( vseg_t * vseg )
    214213{
    215214    // update vseg descriptor
  • trunk/kernel/mm/vseg.h

    r457 r473  
    161161 * The lock protecting the vsegs list in VMM must be taken by the caller.
    162162 *******************************************************************************************
    163  * @ vmm       : pointer on the VMM
    164163 * @ vseg      : pointer on the vseg descriptor
    165164 ******************************************************************************************/
    166 void vseg_detach( struct vmm_s  * vmm,
    167                   vseg_t        * vseg );
     165void vseg_detach( vseg_t        * vseg );
    168166
    169167
  • trunk/kernel/syscalls/shared_include/shared_stdlib.h

    r445 r473  
    3535exit_statut_t;
    3636
    37 
    38 #define   RAND_MAX   65535
    39 
    40 #ifndef NULL
    41 #define  NULL  (void *)0
    4237#endif
    43 
    44 #endif
  • trunk/kernel/syscalls/sys_alarm.c

    r457 r473  
    3737
    3838    printk("\n[ERROR] in %s for thread %x in process %x : not implemented yet\n",
    39            __FUNCTION__ , this->trdid , process->pid );
    40     this->errno = EFAULT;
     39    __FUNCTION__ , this->trdid , process->pid , cycles );
    4140    return -1;
    4241}
  • trunk/kernel/syscalls/sys_closedir.c

    r457 r473  
    3434int sys_closedir ( DIR * dirp )
    3535{
    36     printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__ );
    37     CURRENT_THREAD->errno = ENOMEM;
     36    printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__, dirp );
    3837    return -1;
    3938}  // end sys_closedir()
  • trunk/kernel/syscalls/sys_opendir.c

    r457 r473  
    3535                  DIR  ** dirp )
    3636{
    37     printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__ );
    38     CURRENT_THREAD->errno = ENOMEM;
     37    printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__, pathname, dirp );
    3938    return -1;
    4039}  // end sys opendir()
  • trunk/kernel/syscalls/sys_pipe.c

    r457 r473  
    3333    thread_t * this = CURRENT_THREAD;
    3434
    35     printk("\n[ERROR] in %d : not implemented yet\n", __FUNCTION__ );
    36     this->errno = ENOSYS;
     35    printk("\n[ERROR] in %d : not implemented yet\n", __FUNCTION__, file_fd );
    3736    return -1;
    3837}
  • trunk/kernel/syscalls/sys_readdir.c

    r457 r473  
    3737                 struct dirent ** dentp )
    3838{
    39     printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__ );
    40     CURRENT_THREAD->errno = ENOMEM;
     39    printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__, dirp, dentp );
    4140    return -1;
    4241}  // end sys_readdir()
  • trunk/kernel/syscalls/sys_signal.c

    r457 r473  
    3333
    3434        thread_t  * this    = CURRENT_THREAD;
     35    process_t * process = this->process;
    3536
    36     printk("\n[ERROR] in %s : not implemented yet\n", __FUNCTION__ );
    37     this->errno = EINVAL;
     37    printk("\n[ERROR] in %s : thread %x in process %x / not implemented yet\n",
     38    __FUNCTION__, this->trdid, process->pid, sig_id, handler );
    3839    return -1;
    3940}
  • trunk/kernel/syscalls/sys_thread_join.c

    r457 r473  
    9696
    9797#if DEBUG_SYSCALLS_ERROR
    98 printk("\n[ERROR] in %s : this thread == target thread\n", __FUNCTION__ );
     98printk("\n[ERROR] in %s : this thread (%x) == target thread(%x)\n",
     99__FUNCTION__, joining_ptr->trdid, trdid );
    99100#endif
    100101        joining_ptr->errno = EDEADLK;
Note: See TracChangeset for help on using the changeset viewer.