Just a sample of the Echomail archive
[ << oldest | < older | list | newer > | newest >> ]
|  Message 48034  |
|  Deucе to Git commit to main/sbbs/master  |
|  src/odoors/ODCom.c ODInQue.c  |
|  04 Nov 25 00:34:51  |
 TZUTC: -0800 MSGID: 53448.syncprog@1:103/705 2d6fc173 PID: Synchronet 3.21a-Linux master/88b423313 Sep 29 2025 GCC 12.2.0 TID: SBBSecho 3.31-Linux master/d39e01091 Nov 03 2025 GCC 12.2.0 BBSID: VERT CHRS: UTF-8 4 FORMAT: flowed https://gitlab.synchro.net/main/sbbs/-/commit/ed7769af698b68949128e029 Modified Files: src/odoors/ODCom.c ODInQue.c Log Message: Greatly lower CPU utilization of wait loop When OpenDoors is waiting for a set period (or forever) for a key from the remote, store that period in a global variable (capped to 250ms, which is the kernel rerun timer) before calling the kernel while waiting. For socket and stdio I/O modes, sit in poll() or select() for up to that time (capped to 200ms, which is less than the kernel rerun timer). Since socket and stdio modes are also checking "carrier" and only DOS does anything except check for carrier and new bytes in the loop, and DOS doesn't support socket or stdio, we're not blocking anything that matters here (as long as we update the timers within 250ms). Previously, OpenDoors would use about 7% of a core on my system when waiting for a key from the remote in stdio and socket modes. Now it uses about 0.02%. --- SBBSecho 3.31-Linux * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705) SEEN-BY: 10/0 1 102/401 103/1 705 105/81 106/201 124/5016 128/187 SEEN-BY: 129/14 153/7715 154/110 214/22 218/0 1 215 610 700 810 226/30 SEEN-BY: 227/114 229/110 206 317 400 426 428 470 700 705 266/512 280/464 SEEN-BY: 291/111 301/1 320/219 322/757 342/200 396/45 460/58 633/280 SEEN-BY: 712/848 902/26 5075/35 PATH: 103/705 218/700 229/426 |
[ << oldest | < older | list | newer > | newest >> ]