Changeset 7781


Ignore:
Timestamp:
02/11/19 11:18:50 (6 months ago)
Author:
alexander
Message:

Fixed startstop, added "Restarting" status

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/startstop_lib.h

    r6803 r7781  
    150150       char   threadPriority[13]; 
    151151       char   display[17]; 
    152        char   status[9]; /* stores "Stopped" status... vs. Alive/Dead */ 
     152       char   status[11]; /* stores "Stopped" "Restarting" status... vs. Alive/Dead */ 
    153153       PROCESS_INFORMATION procInfo; 
    154154       HANDLE mutex; /* used by startstop to serialize operations on this child */ 
     
    176176       uid_t  use_uid; 
    177177       gid_t  use_gid; 
    178        char   status[9]; /* stores "Stopped" status... vs. Alive/Dead */ 
     178       char   status[11]; /* stores "Stopped" "Restarting" status... vs. Alive/Dead */ 
    179179       mutex_t mutex; /* used by startstop to serialize operations on this child */ 
    180180    } CHILD; 
  • trunk/src/libsrc/util/startstop_unix_generic.c

    r7776 r7781  
    13821382/* Get and print status of the parent process 
    13831383   ******************************************/ 
    1384    sprintf( line, "\n%*s  Process           Class/    CPU\n", pn_width, "Process" ); 
     1384   sprintf( line, "\n%*s  Process               Class/    CPU\n", pn_width, "Process" ); 
    13851385   strcat( statusMsg, line ); 
    1386    sprintf( line,   "%*s    Id     Status  Priority   Used  Argument\n", pn_width, " Name  " ); 
     1386   sprintf( line,   "%*s    Id      Status     Priority   Used    Argument\n", pn_width, " Name  " ); 
    13871387   strcat( statusMsg, line ); 
    1388    sprintf( line,   "%*s  -------  ------  --------   ----  --------\n", pn_width, "-------" ); 
     1388   sprintf( line,   "%*s  -------   ------     --------   ----    --------\n", pn_width, "-------" ); 
    13891389   strcat( statusMsg, line ); 
    13901390 
     
    13991399   sprintf( phrase, " %7d", parent.pid ); 
    14001400   strcat( line, phrase ); 
    1401    sprintf( phrase, "   Alive " ); 
     1401   sprintf( phrase, "     Alive  " ); 
    14021402   strcat( line, phrase ); 
    14031403 
     
    15041504      sprintf( phrase, " %7d", child[i].pid ); 
    15051505      strcat( line, phrase ); 
    1506  
    1507       if ( strcmp( child[i].status, "NoExec" ) == 0 ) { 
    1508         strcpy( string,       "   NoExec " ); 
     1506      //XXX XXX XXX 
     1507      //Adding in restarting condition here: 
     1508      if ( strcmp( child[i].status, "Restarting") == 0 ) { 
     1509         strcpy(string,        "   Restarting " ); 
     1510      } else  if ( strcmp( child[i].status, "NoExec" ) == 0 ) { 
     1511        strcpy( string,       "    NoExec   " ); 
    15091512        status = -1; 
    15101513      } else { 
    15111514        /* Assume its a zombie until we know otherwise */ 
    1512         strcpy( string,       "   Zombie " ); 
     1515        strcpy( string,       "    Zombie  " ); 
    15131516#ifdef _LINUX /* Linux-only __WALL wait-all */ 
    15141517        status = waitpid( child[i].pid, &dummy, WNOHANG | __WALL ); 
     
    15231526                /* We now know it is alive */ 
    15241527                strcpy( child[i].status, "Alive" ); 
    1525             strcpy( string,      "   Alive  " ); 
     1528            strcpy( string,      "     Alive    " ); 
    15261529        } 
    15271530        if ( (status == -1) && (errno == ECHILD) ) { 
    15281531            if ( strcmp( child[i].status, "Stopped" ) == 0 ) { 
    1529                 strcpy( string, "   Stop   " ); 
     1532                strcpy( string, "     Stop    " ); 
    15301533            } else if ( noexec_fd == -1 && strcmp( child[i].status, "Start" ) == 0 ) { 
    15311534                /* It started, but our FIFO is missing and there is no process: 
    15321535                        assume it failed to actually run */ 
    15331536                strcpy( child[i].status, "NoExec" ); 
    1534                 strcpy( string, "   NoExec " ); 
     1537                strcpy( string, "    NoExec  " ); 
    15351538            } else { 
    1536                 strcpy( string, "   Dead   " ); 
     1539                strcpy( string, "     Dead    " ); 
    15371540            } 
    15381541        } 
     
    18001803    *************************************/ 
    18011804      RequestSpecificMutex( &(child[childNum].mutex) ); 
    1802  
     1805      strcpy( child[childNum].status, "Restarting" ); 
    18031806   /* Kill the child in stages: 
    18041807    *   First, try flagging it to off itself (stage==STOP_BY_FLAG) 
Note: See TracChangeset for help on using the changeset viewer.