From: Maria Matejka Date: Fri, 7 Jun 2024 10:12:00 +0000 (+0200) Subject: Loop scheduler tracing options configurable X-Git-Tag: v3.0.0~173 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0fb9177374fe2260ac4ed2f1a9307d564f311fab;p=thirdparty%2Fbird.git Loop scheduler tracing options configurable --- diff --git a/conf/conf.h b/conf/conf.h index 4bfcf06b0..8b8e0c31b 100644 --- a/conf/conf.h +++ b/conf/conf.h @@ -46,7 +46,14 @@ struct config { const char *hostname; /* Hostname */ int cli_debug; /* Tracing of CLI connections and commands */ - int latency_debug; /* I/O loop tracks duration of each event */ + enum latency_debug_flags { + DL_PING = 1, + DL_WAKEUP = 2, + DL_SCHEDULING = 4, + DL_SOCKETS = 0x10, + DL_EVENTS = 0x20, + DL_TIMERS = 0x40, + } latency_debug; /* I/O loops log information about task scheduling */ u32 latency_limit; /* Events with longer duration are logged (us) */ u32 watchdog_warning; /* I/O loop watchdog limit for warning (us) */ u32 watchdog_timeout; /* Watchdog timeout (in seconds, 0 = disabled) */ diff --git a/doc/bird.sgml b/doc/bird.sgml index 4e0e510f4..a5fb4cec3 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -589,9 +589,10 @@ include "tablename.conf";; of connects and disconnects, 2 and higher for logging of all client commands). Default: 0. - + Activate tracking of internal scheduler actions. This is a developer + and technical support tool for cases when internal events are missed. + You should keep this off unless you know what you are doing. Default: off.