cvs commit: src/sys/netinet ip_dummynet.c ip_dummynet.h ip_fw_pfil.c src/sys/net if_bridge.c if_ethersubr.c src/sbin/ipfw ipfw.8

Oleg Bulyzhin oleg at FreeBSD.org
Fri Apr 25 10:26:31 UTC 2008


oleg        2008-04-25 10:26:31 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    sys/netinet          ip_dummynet.h ip_dummynet.c ip_fw_pfil.c 
    sys/net              if_bridge.c if_ethersubr.c 
    sbin/ipfw            ipfw.8 
  Log:
  MFC:
  src/sys/netinet/ip_dummynet.h   1.41
  src/sys/netinet/ip_dummynet.c   1.111-1.114
  src/sys/netinet/ip_fw_pfil.c    1.26
  src/sys/net/if_bridge.c         1.107
  src/sys/net/if_ethersubr.c      1.240
  src/sbin/ipfw/ipfw.8            1.206
  
  - style(9) cleanup.
  - dummynet_io() declaration has changed.
  - Alter packet flow inside dummynet and introduce 'fast' mode of dummynet
    operation: allow certain packets to bypass dummynet scheduler. Benefits are:
    -- lower latency: if packet flow does not exceed pipe bandwidth, packets
       will not be (up to tick) delayed (due to dummynet's scheduler granularity).
    -- lower overhead: if packet avoids dummynet scheduler it shouldn't reenter
       ip stack later. Such packets can be fastforwarded.
    -- recursion (which can lead to kernel stack exhaution) eliminated. This fix
       long existed panic, which can be triggered this way:
          kldload dummynet
          sysctl net.inet.ip.fw.one_pass=0
          ipfw pipe 1 config bw 0
          for i in `jot 30`; do ipfw add 1 pipe 1 icmp from any to any; done
          ping -c 1 localhost
  - New sysctl nodes:
    net.inet.ip.dummynet.io_fast -        enables 'fast' dummynet io
    net.inet.ip.dummynet.io_pkt -         packets passed to dummynet
    net.inet.ip.dummynet.io_pkt_fast -    packets avoided dummynet scheduler
    net.inet.ip.dummynet.io_pkt_drop -    packets dropped by dummynet
  - Workaround p->numbytes overflow, which can result in infinite loop inside
    dummynet module (prerequisite is using queues with "fat" pipe).
  
  PR:     kern/113548 kern/121955
  
  Revision   Changes    Path
  1.203.2.4  +18 -0     src/sbin/ipfw/ipfw.8
  1.103.2.6  +1 -1      src/sys/net/if_bridge.c
  1.236.2.2  +1 -1      src/sys/net/if_ethersubr.c
  1.110.2.1  +395 -337  src/sys/netinet/ip_dummynet.c
  1.40.2.1   +1 -1      src/sys/netinet/ip_dummynet.h
  1.25.2.2   +28 -26    src/sys/netinet/ip_fw_pfil.c


More information about the cvs-src mailing list