Ignore:
Timestamp:
Oct 4, 2018, 11:47:36 PM (6 years ago)
Author:
alain
Message:

Complete restructuration of kernel locks.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kernel/kern/rpc.h

    r503 r564  
    2929#include <hal_atomic.h>
    3030#include <bits.h>
    31 #include <spinlock.h>
    3231#include <vseg.h>
    3332#include <remote_fifo.h>
     
    150149
    151150/***********************************************************************************
    152  * This function is the entry point for RPC handling on the server cluster.
    153  * It is executed by the core receiving the IPI sent by the client thread.
    154  * - If the RPC FIFO is empty, it deschedules.
    155  * - If the RPC FIFO is not empty, it checks if it exist a non-blocked RPC thread
    156  *   in the cluster, creates a new one if required, and deschedule to allow
    157  *   the RPC thead to execute.
    158  **********************************************************************************/
    159 void rpc_check( void );
    160 
    161 /***********************************************************************************
    162  * This function contains the loop to execute all pending RPCs on the server side.
    163  * It is called by the rpc_thread_func() function with irq disabled, and after
    164  * RPC_FIFO ownership acquisition.
    165  ***********************************************************************************
    166  * @ rpc_fifo  : pointer on the local RPC fifo
    167  **********************************************************************************/
    168 void rpc_execute_all( remote_fifo_t * rpc_fifo );
    169 
    170 /***********************************************************************************
    171  * This function contains the infinite loop executed by a RPC thread.
     151 * This function contains the infinite loop executed by a RPC thread,
     152 * to handle all pending RPCs registered in the RPC fifo attached to a given core.
    172153 **********************************************************************************/
    173154void rpc_thread_func( void );
     
    177158 **********************************************************************************/
    178159void __attribute__((noinline)) rpc_undefined( xptr_t xp __attribute__ ((unused)) );
    179 
    180160
    181161
Note: See TracChangeset for help on using the changeset viewer.