2015-10-28 59 views
0

我已配置systemd RuntimeWatchdogSec=10爲什麼systemd發送這麼多ping給監督者?

Systemd正在發送大量ping到開始(1500 5秒內)的看門狗設備。每過一段時間,它就會正常動作,即間隔5秒的一個或兩個乒乓球,然後再次發瘋。任何想法是什麼造成這個?

我使用的嵌入式Linux發行版systemd V204,內部開發的

+0

堆棧溢出是針對編程的問題;一般的軟件支持問題是無關緊要的。您的問題可能更適合超級用戶。 –

+0

也在http://superuser.com/questions/992951/詢問。 – JdeBP

+0

我已經在上述評論 – Hamzahfrq

回答

1
  • Systemd做它的內部管理工作,並在平同一迴路。

  • 因此,當systemd從其內部工作中解放出來時,它將等待RuntimeWatchdogSec指定值的一半,並執行ping操作。

  • 在啓動時systemd會加載它的工作隊列,所以它會經常ping。

代碼看起來與此類似,

while (cond) 
{ 
    if (cond1) 
     watchdog_ping(); /* Ping happens here */ 

    if (task1_queue() > 0) 
     continue; 

    if (task2_queue() > 0) 
     continue; 

    if (task3_queue() > 0) 
     continue; 

    /* ...... */ 

    /* Sleep for half the RuntimeWatchdogSec time */ 
    do_wait(); 
} 
+0

感謝您的回覆。大量的ping不僅發生在初始階段,而且每次它醒來都是如此,在我看來這並不是最佳的 – Hamzahfrq