Debug code to show thread table is now back in. Thiss will fill your log
authorDave West <davew@uncensored.citadel.org>
Tue, 27 Nov 2007 13:09:40 +0000 (13:09 +0000)
committerDave West <davew@uncensored.citadel.org>
Tue, 27 Nov 2007 13:09:40 +0000 (13:09 +0000)
file.
Added number of threads to INFO command
Changed calc for load averages, now it is a percentage.

citadel/citserver.c
citadel/sysdep.c

index dac9d7a9b6299854cb1fe597122017ee67230163..f2c957d78b08bd97f9ae54f2b93606b44536b292 100644 (file)
@@ -299,6 +299,7 @@ void cmd_info(void) {
        /* Output load averages */
        cprintf("%f\n", CtdlThreadLoadAvg);
        cprintf("%f\n", CtdlThreadWorkerAvg);
+       cprintf("%d\n", CtdlThreadGetCount());
        
        cprintf("000\n");
 }
index f1ce1f24ea7e65a9b780ff5a236f9dbd78bbe703..2f21ae51e45ba10920e570558bee998c5c044fab 100644 (file)
@@ -1432,7 +1432,7 @@ void ctdl_thread_internal_calc_loadavg(void)
                ctdl_thread_internal_update_avgs(that_thread);
                pthread_mutex_lock(&that_thread->ThreadMutex);
                that_thread->load_avg = that_thread->avg_sleeping + that_thread->avg_running + that_thread->avg_blocked;
-               that_thread->load_avg = that_thread->avg_running / that_thread->load_avg / 100;
+               that_thread->load_avg = that_thread->avg_running / that_thread->load_avg * 100;
                that_thread->avg_sleeping /= 2;
                that_thread->avg_running /= 2;
                that_thread->avg_blocked /= 2;
@@ -1442,7 +1442,7 @@ void ctdl_thread_internal_calc_loadavg(void)
                        worker_avg += that_thread->load_avg;
                        workers++;
                }
-/*             CtdlLogPrintf(CTDL_DEBUG, "CtdlThread, \"%s\" (%ld) \"%s\" %f %f %f %f.\n",
+               CtdlLogPrintf(CTDL_DEBUG, "CtdlThread, \"%s\" (%ld) \"%s\" %f %f %f %f.\n",
                        that_thread->name,
                        that_thread->tid,
                        CtdlThreadStates[that_thread->state],
@@ -1450,13 +1450,13 @@ void ctdl_thread_internal_calc_loadavg(void)
                        that_thread->avg_running,
                        that_thread->avg_blocked,
                        that_thread->load_avg);
-*/
+
                pthread_mutex_unlock(&that_thread->ThreadMutex);
                that_thread = that_thread->next;
        }
        CtdlThreadLoadAvg = load_avg/num_threads;
        CtdlThreadWorkerAvg = worker_avg/workers;
-//     CtdlLogPrintf(CTDL_INFO, "System load average %f, workers averag %f\n", CtdlThreadLoadAvg, CtdlThreadWorkerAvg);
+       CtdlLogPrintf(CTDL_INFO, "System load average %f, workers averag %f\n", CtdlThreadLoadAvg, CtdlThreadWorkerAvg);
        end_critical_section(S_THREAD_LIST);
 }