Index: trunk/kernel/kern/signal.h
===================================================================
--- trunk/kernel/kern/signal.h	(revision 16)
+++ trunk/kernel/kern/signal.h	(revision 23)
@@ -4,5 +4,5 @@
  * Author  Ghassan Almaless (2008,2009,2010,2011,2012)
  *         Mohamed Lamine Karaoui (2015) 
- *         Alain Greiner    (2016)
+ *         Alain Greiner    (2016,2017)
  *
  * Copyright (c) UPMC Sorbonne Universites
@@ -33,39 +33,39 @@
 #define SIG_ERROR     -1L
 
-#define SIGHUP     1       /*! hangup */
-#define SIGINT     2       /*! interrupt */
-#define SIGQUIT    3       /*! quit */
-#define SIGILL     4       /*! illegal instruction (not reset when caught) */
-#define SIGTRAP    5       /*! trace trap (not reset when caught) */
-#define SIGIOT     6       /*! IOT instruction */
-#define SIGABRT    6       /*! used by abort, replace SIGIOT in the future */
-#define SIGEMT     7       /*! EMT instruction */
-#define SIGFPE     8       /*! floating point exception */
-#define SIGKILL    9       /*! kill (cannot be caught or ignored) */
-#define SIGBUS     10      /*! bus error */
-#define SIGSEGV    11      /*! segmentation violation */
-#define SIGSYS     12      /*! bad argument to system call */
-#define SIGPIPE    13      /*! write on a pipe with no one to read it */
-#define SIGALRM    14      /*! alarm clock */
-#define SIGTERM    15      /*! software termination signal from kill */
-#define SIGURG     16      /*! urgent condition on IO channel */
-#define SIGSTOP    17      /*! sendable stop signal not from tty */
-#define SIGTSTP    18      /*! stop signal from tty */
-#define SIGCONT    19      /*! continue a stopped process */
-#define SIGCHLD    20      /*! to parent on child stop or exit */
-#define SIGCLD     20      /*! System V name for SIGCHLD */
-#define SIGTTIN    21      /*! to readers pgrp upon background tty read */
-#define SIGTTOU    22      /*! like TTIN for output if (tp->t_local&LTOSTOP) */
-#define SIGIO      23      /*! input/output possible signal */
-#define SIGPOLL    SIGIO   /*! System V name for SIGIO */
-#define SIGXCPU    24      /*! exceeded CPU time limit */
-#define SIGXFSZ    25      /*! exceeded file size limit */
-#define SIGVTALRM  26      /*! virtual time alarm */
-#define SIGPROF    27      /*! profiling time alarm */
-#define SIGWINCH   28      /*! window changed */
-#define SIGLOST    29      /*! resource lost (eg, record-lock lost) */
-#define SIGUSR1    30      /*! user defined signal 1 */
-#define SIGUSR2    31      /*! user defined signal 2 */
-#define SIG_NR     32      /*! signal 0 implied */
+#define SIGHUP     1       /*! hangup                                                     */
+#define SIGINT     2       /*! interrupt                                                  */
+#define SIGQUIT    3       /*! quit                                                       */
+#define SIGILL     4       /*! illegal instruction (not reset when caught)                */
+#define SIGTRAP    5       /*! trace trap (not reset when caught)                         */
+#define SIGIOT     6       /*! IOT instruction                                            */
+#define SIGABRT    6       /*! used by abort, replace SIGIOT in the future                */
+#define SIGEMT     7       /*! EMT instruction                                            */
+#define SIGFPE     8       /*! floating point exception                                   */
+#define SIGKILL    9       /*! kill (cannot be caught or ignored)                         */
+#define SIGBUS     10      /*! bus error                                                  */
+#define SIGSEGV    11      /*! segmentation violation                                     */
+#define SIGSYS     12      /*! bad argument to system call                                */
+#define SIGPIPE    13      /*! write on a pipe with no one to read it                     */
+#define SIGALRM    14      /*! alarm clock                                                */
+#define SIGTERM    15      /*! software termination signal from kill                      */
+#define SIGURG     16      /*! urgent condition on IO channel                             */
+#define SIGSTOP    17      /*! sendable stop signal not from tty                          */
+#define SIGTSTP    18      /*! stop signal from tty                                       */
+#define SIGCONT    19      /*! continue a stopped process                                 */
+#define SIGCHLD    20      /*! to parent on child stop or exit                            */
+#define SIGCLD     20      /*! System V name for SIGCHLD                                  */
+#define SIGTTIN    21      /*! to readers pgrp upon background tty read                   */
+#define SIGTTOU    22      /*! like TTIN for output if (tp->t_local&LTOSTOP)              */
+#define SIGIO      23      /*! input/output possible signal                               */
+#define SIGPOLL    SIGIO   /*! System V name for SIGIO                                    */
+#define SIGXCPU    24      /*! exceeded CPU time limit                                    */
+#define SIGXFSZ    25      /*! exceeded file size limit                                   */
+#define SIGVTALRM  26      /*! virtual time alarm                                         */
+#define SIGPROF    27      /*! profiling time alarm                                       */
+#define SIGWINCH   28      /*! window changed                                             */
+#define SIGLOST    29      /*! resource lost (eg, record-lock lost)                       */
+#define SIGUSR1    30      /*! user defined signal 1                                      */
+#define SIGUSR2    31      /*! user defined signal 2                                      */
+#define SIG_NR     32      /*! signal 0 implied                                           */
 
 #define SIG_DEFAULT_MASK         0xFFEEFFFF
@@ -81,5 +81,5 @@
 
 /*******************************************************************************************
- * This structure ...
+ * This structure ... TODO
  ******************************************************************************************/
 
@@ -104,5 +104,5 @@
 
 /*******************************************************************************************
- * This structure ...
+ * This structure ... TODO
  ******************************************************************************************/
 
@@ -122,5 +122,5 @@
 
 /*******************************************************************************************
- * This structure TODO
+ * This structure ... TODO
  ******************************************************************************************/
 
@@ -132,31 +132,14 @@
 sig_mgr_t;
 
-
 /*******************************************************************************************
- * This function TODO
- ******************************************************************************************/
-int sys_signal ( uint32_t       sig, 
-                 sa_handler_t * handler );
-
-/*******************************************************************************************
- * This function TODO
+ * This function ... TODO
  ******************************************************************************************/
 int sys_sigreturn_setup( void * sigreturn_func );
 
-/*******************************************************************************************
- * This function register the signal <sig> in the bit_vector of all threads of a given
- * process identified by its <pid>, in all clusters containing threads for this process.
- * It can be executed by any thread running in any cluster, as this function uses
- * remote access to traverse the list of process copies, and the RPC_RISE_SIGNAL 
- * to deliver the signal to all involved clusters.
- * The list of process copies is rooted in the owner cluster. 
- ******************************************************************************************/
-int sys_kill( pid_t    pid,
-              uint32_t sig );
 
 /*******************************************************************************************
- * This function TODO
+ * This function ... TODO
  ******************************************************************************************/
-error_t signal_manager_init( struct process_s * process );
+void signal_manager_init( struct process_s * process );
 
 /*******************************************************************************************
@@ -165,7 +148,10 @@
  * It must be executed by a thread running in the same cluster as the target threads
  * (can be a local thread or a RPC thread).
+ *******************************************************************************************
+ * @ process   : local pointer on local target process. 
+ * @ sig_id    : signal type.
  ******************************************************************************************/
-error_t signal_rise( struct process_s * process, 
-                     uint32_t           sig );
+void signal_rise( struct process_s * process, 
+                  uint32_t           sig_id );
 
 /*******************************************************************************************
