cvs commit: src/sys/netinet ip_dummynet.c

Oleg Bulyzhin oleg at FreeBSD.org
Fri Oct 27 13:05:39 UTC 2006


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


More information about the cvs-all mailing list