From owner-cvs-all@FreeBSD.ORG Fri Oct 27 13:05:39 2006 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2390816A40F; Fri, 27 Oct 2006 13:05:39 +0000 (UTC) (envelope-from oleg@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 59D6343D72; Fri, 27 Oct 2006 13:05:38 +0000 (GMT) (envelope-from oleg@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k9RD5cxf022594; Fri, 27 Oct 2006 13:05:38 GMT (envelope-from oleg@repoman.freebsd.org) Received: (from oleg@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k9RD5cAJ022591; Fri, 27 Oct 2006 13:05:38 GMT (envelope-from oleg) Message-Id: <200610271305.k9RD5cAJ022591@repoman.freebsd.org> From: Oleg Bulyzhin Date: Fri, 27 Oct 2006 13:05:38 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/netinet ip_dummynet.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Oct 2006 13:05:39 -0000 oleg 2006-10-27 13:05:38 UTC FreeBSD src repository Modified files: sys/netinet ip_dummynet.c Log: - Convert net.inet.ip.dummynet.curr_time net.inet.ip.dummynet.searches net.inet.ip.dummynet.search_steps to SYSCTL_LONG nodes. It will prevent frequent wrap around on 64bit archs. - Implement simple mechanics for dummynet(4) internal time correction. Under certain circumstances (system high load, dummynet lock contention, etc) dummynet's tick counter can be significantly slower than it should be. (I've observed up to 25% difference on one of my production servers). Since this counter used for packet scheduling, it's accuracy is vital for precise bandwidth limitation. Introduce new sysctl nodes: net.inet.ip.dummynet. tick_lost - number of ticks coalesced by taskqueue thread. tick_adjustment - number of time corrections done. tick_diff - adjusted vs non-adjusted tick counter difference tick_delta - last vs 'standard' tick differnece (usec). tick_delta_sum - accumulated (and not corrected yet) time difference (usec). Reviewed by: glebius MFC after: 2 month Revision Changes Path 1.104 +62 -5 src/sys/netinet/ip_dummynet.c