src/sbbs3 ftpsrvr.c 1.426 1.427 mailsrvr.c 1.598 1.599 main.cpp 1.639 1.640 services.c 1.294 1.295 websrvr.c 1.638 1.639
Update of /cvsroot/sbbs/src/sbbs3
In directory cvs:/tmp/cvs-serv11055
Modified Files:
ftpsrvr.c mailsrvr.c main.cpp services.c websrvr.c
Log Message:
Fix the root-cause of the high-CPU utlization on server recycle problem:
How did startup->sem_chk_freq get set (back) to 0 in the first place?
The reason: the startup struct sanitization only occured when the various server threads were first started. When recycled, the server would call back to the original caller (e.g. sbbscon) which may (and did) re-read the sbbs.ini file, which could have SemCheckFrequency set to 0 (or missing) and the sanitization did not happen again (so a 0 value was used in select() calls, resuilting in high CPU utilization for several threads).
So now, all startup struct sanitization occurs inside the init/recycle loop
and sem_chk_freq should never revert to 0 again. This was the main bug.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ
telnet://vert.synchro.net