Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Jan 2011 11:10:10 GMT
From:      Sergey Kandaurov <pluknet@gmail.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: bin/152525: ntpd(8) on 8.1 loops on select() with EBADF
Message-ID:  <201101111110.p0BBAAmw049855@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/152525; it has been noted by GNATS.

From: Sergey Kandaurov <pluknet@gmail.com>
To: bug-followup@FreeBSD.org, pluknet@gmail.com
Cc:  
Subject: Re: bin/152525: ntpd(8) on 8.1 loops on select() with EBADF
Date: Tue, 11 Jan 2011 14:03:29 +0300

 Some more details and investigations.
 
 This situation reproduces iff there are over 1000 IP assigned on interface.
 I suspect select() behaves incorrectly on such fd_set size of listen sockets.
 
 [unmodified ntpd as in 8]# sockstat | grep ntpd | grep '\:123' | wc -l
      999
 
 [unmodified ntpd as in 8]# top -bI | grep ntpd
  1478 root             1 113    0 11736K  3428K CPU3    3 429.7H 75.78% ntpd
 
 The possible correction is in updating ntpd to the latest stable ntpd
 version that supports listening on a specified subset of sockets.
 
 So I've updated ntpd to 4.2.6p2 on one of the problem boxes,
 and that reduced the number of listened sockets to 6.
 
 [ntpd 4.2.6]# sockstat | grep ntpd | grep '\:123' | wc -l
        6
 
 That seems to fix the reported issue.
 
 -- 
 wbr,
 pluknet



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201101111110.p0BBAAmw049855>