Diff for /freem/src/mumps.c between versions 1.26 and 1.28

version 1.26, 2025/04/16 17:36:12 version 1.28, 2025/05/14 12:22:04
Line 24 Line 24
  *   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.   *   along with FreeM.  If not, see <https://www.gnu.org/licenses/>.
  *   *
  *   $Log$   *   $Log$
    *   Revision 1.28  2025/05/14 12:22:04  snw
    *   Further work on shared memory
    *
    *   Revision 1.27  2025/04/17 00:34:04  snw
    *   More logging improvements
    *
  *   Revision 1.26  2025/04/16 17:36:12  snw   *   Revision 1.26  2025/04/16 17:36:12  snw
  *   Add FreeBSD shm cleanup script   *   Add FreeBSD shm cleanup script
  *   *
Line 523  int main (int argc, char **argv, char ** Line 529  int main (int argc, char **argv, char **
     }              }        
 #endif      #endif    
           
       
     if (run_daemon == TRUE) {      if (run_daemon == TRUE) {
         if (geteuid () != 0 && nofork == FALSE) {          if (geteuid () != 0 && nofork == FALSE) {
             logprintf (FM_LOG_FATAL, "freem:  forking daemon must be run as root");              logprintf (FM_LOG_FATAL, "freem:  forking daemon must be run as root");
         }                          }                
     }      }
           
           
     if ((nofork == TRUE) && (run_daemon == FALSE)) {      if ((nofork == TRUE) && (run_daemon == FALSE)) {
         freem_usage ();          freem_usage ();
         exit (1);          exit (1);
Line 793  int main (int argc, char **argv, char ** Line 801  int main (int argc, char **argv, char **
   
                 logprintf (FM_LOG_WARNING, "environment:  entering maintenance mode");                  logprintf (FM_LOG_WARNING, "environment:  entering maintenance mode");
                                   
                 for (slot = shm_config->hdr->jobtab_head; slot != NULL; slot = slot->next) {                  for (slot = SOA(shm_config->hdr->jobtab_head); slot != NULL; slot = SOA(slot->next)) {
   
                     if ((slot->pid != pid) && ((slot->flags & JFLG_FMADM) != JFLG_FMADM)) {                      if ((slot->pid != pid) && ((slot->flags & JFLG_FMADM) != JFLG_FMADM)) {
                         kill (slot->pid, SIGINT);                          kill (slot->pid, SIGINT);
Line 847  int main (int argc, char **argv, char ** Line 855  int main (int argc, char **argv, char **
                 exit (0);                  exit (0);
                                   
             }              }
               
             job_gc_mark ();              job_gc_mark ();
             job_set_status (pid, JSTAT_IDLE);              job_set_status (pid, JSTAT_IDLE);
             sleep (1);              sleep (1);
                           
             job_set_status (pid, JSTAT_HOUSEKEEPING);              job_set_status (pid, JSTAT_HOUSEKEEPING);
             job_gc_sweep ();              job_gc_sweep ();
               
             sleep (1);              sleep (1);
         }          }
                           

Removed from v.1.26  
changed lines
  Added in v.1.28


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>