--- freem/src/frmgbl.c 2025/04/13 04:22:43 1.11 +++ freem/src/frmgbl.c 2025/04/17 14:34:27 1.13 @@ -1,5 +1,5 @@ /* - * $Id: frmgbl.c,v 1.11 2025/04/13 04:22:43 snw Exp $ + * $Id: frmgbl.c,v 1.13 2025/04/17 14:34:27 snw Exp $ * freem global C variables * * @@ -24,6 +24,12 @@ * along with FreeM. If not, see . * * $Log: frmgbl.c,v $ + * Revision 1.13 2025/04/17 14:34:27 snw + * Further logging improvements + * + * Revision 1.12 2025/04/16 17:36:12 snw + * Add FreeBSD shm cleanup script + * * Revision 1.11 2025/04/13 04:22:43 snw * Fix snprintf calls * @@ -61,9 +67,10 @@ #include #include #include +#include #include "transact.h" #include "locktab.h" -#include +#include "log.h" #ifdef LIBFREEM # include "errmsg.h" @@ -650,8 +657,11 @@ short ipc_pending = 0; /* 1 if an inco int strict_mode = 0; short first_process = FALSE; -size_t shm_init_size = 16777216; - +#if defined(__FreeBSD__) + size_t shm_init_size = 4194304; +#else + size_t shm_init_size = 16777216; +#endif short inrpt_after_async = FALSE; void unnew (void) @@ -734,11 +744,12 @@ void m_fatal(char *s) if (tp_level) { - fprintf (stderr, "freem [FATAL]: memory allocation failure in %s; rolling back %d transactions [errno %d %s]\n", s, tp_level, errno_sav, strerror (errno_sav)); + /* TODO: make this FM_LOG_FATAL (logger will need to do a tp_trollback) */ + logprintf (FM_LOG_ERROR, "freem: memory allocation failure in %s; rolling back %d transactions (error code %d [%s])", s, tp_level, errno_sav, strerror (errno_sav)); tp_trollback (tp_level); } else { - fprintf (stderr, "freem [FATAL]: memory allocation failure in %s [errno %d %s]\n", s, errno_sav, strerror (errno_sav)); + logprintf (FM_LOG_FATAL, "freem: memory allocation failure in %s (error code %d [%s])", s, errno_sav, strerror (errno_sav)); } exit (3);