cvs commit: src/sys/i386/i386 nexus.c src/sys/i386/include atomic.h src/sys/kern kern_poll.c lwkt_serialize.c src/sys/net if.c if_var.h rtsock.c src/sbin/ifconfig ifconfig.c src/sys/dev/netif/dc if_dc.c src/sys/dev/netif/em if_em.c if_em.h ...

Matthew Dillon dillon at crater.dragonflybsd.org
Tue May 24 18:45:44 PDT 2005


dillon      2005/05/24 18:44:33 PDT

DragonFly src repository

  Modified files:
    sys/i386/i386        nexus.c 
    sys/i386/include     atomic.h 
    sys/kern             kern_poll.c lwkt_serialize.c 
    sys/net              if.c if_var.h rtsock.c 
    sbin/ifconfig        ifconfig.c 
    sys/dev/netif/dc     if_dc.c 
    sys/dev/netif/em     if_em.c if_em.h 
    sys/dev/netif/fwe    if_fwe.c 
    sys/dev/netif/fxp    if_fxp.c 
    sys/dev/netif/nge    if_nge.c 
    sys/dev/netif/re     if_re.c 
    sys/dev/netif/rl     if_rl.c 
    sys/dev/netif/sis    if_sis.c 
    sys/dev/netif/vr     if_vr.c 
    sys/dev/netif/wi     if_wi.c 
    sys/net/altq         altq_rmclass.c 
  Log:
  Rewrite the polling code.  Instead of trying to do fancy polling enablement
  from inside the IF interrupt itself, which creates a headache in the code,
  simply allow IFF_POLLING to be set and cleared via ifconfig.  This greatly
  simplifies both the networking code and the polling code and allows polling
  to be enabled and disabled at will on a per-network-interface basis.
  
  * Drivers no longer have to have polling checks in the interrupt path.
  * An if_poll function vector has been added.  Polling is supported if the
    driver initializes the vector.
  * Registration command added to the poll function command list.
  * Driver code for registration and deregistration is now greatly simplified.
  
  The kernel polling code no longer randomly turns off the polling bit if an
  interface goes down or is reset.
  
  Remove IFCAP_POLLING, it serves no purpose.
  
  Fix a couple of bugs in the serializer code.  Add a warning in
  nexus_setup_intr if a driver tries to specify a serializer and an SPL.
  A driver can specify one or the other, not both.
  
  Convert the EM driver to use the new serializer API instead of SPLs.
  
  Add ifconfig poll and ifconfig -poll support to ifconfig, and fix bugs
  in the rtsock code that only returned the low 16 bits of the interface
  flags so ifconfig properly reports when polling mode is turned on for an
  interface.
  
  NOTE to people using polling.  You must first enable polling via
  kern.polling.enable, and then may specify the 'poll' directive in ifconfig
  to enable it on a per interface basis.  If IFF_POLLING refuses to be set,
  the device does not support polling.
  
  Revision  Changes    Path
  1.15      +6 -2      src/sys/i386/i386/nexus.c
  1.11      +1 -1      src/sys/i386/include/atomic.h
  1.15      +62 -40    src/sys/kern/kern_poll.c
  1.2       +5 -1      src/sys/kern/lwkt_serialize.c
  1.35      +13 -1     src/sys/net/if.c
  1.25      +12 -3     src/sys/net/if_var.h
  1.26      +2 -2      src/sys/net/rtsock.c
  1.22      +3 -0      src/sbin/ifconfig/ifconfig.c
  1.27      +30 -26    src/sys/dev/netif/dc/if_dc.c
  1.32      +92 -82    src/sys/dev/netif/em/if_em.c
  1.10      +3 -1      src/sys/dev/netif/em/if_em.h
  1.15      +16 -32    src/sys/dev/netif/fwe/if_fwe.c
  1.27      +33 -34    src/sys/dev/netif/fxp/if_fxp.c
  1.24      +43 -43    src/sys/dev/netif/nge/if_nge.c
  1.12      +39 -46    src/sys/dev/netif/re/if_re.c
  1.22      +36 -46    src/sys/dev/netif/rl/if_rl.c
  1.23      +38 -47    src/sys/dev/netif/sis/if_sis.c
  1.23      +19 -4     src/sys/dev/netif/vr/if_vr.c
  1.22      +31 -39    src/sys/dev/netif/wi/if_wi.c
  1.2       +5 -3      src/sys/net/altq/altq_rmclass.c


http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/nexus.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/i386/include/atomic.h.diff?r1=1.10&r2=1.11&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_poll.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/lwkt_serialize.c.diff?r1=1.1&r2=1.2&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/if.c.diff?r1=1.34&r2=1.35&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/if_var.h.diff?r1=1.24&r2=1.25&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/rtsock.c.diff?r1=1.25&r2=1.26&f=u
http://www.dragonflybsd.org/cvsweb/src/sbin/ifconfig/ifconfig.c.diff?r1=1.21&r2=1.22&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/dc/if_dc.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/em/if_em.c.diff?r1=1.31&r2=1.32&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/em/if_em.h.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fwe/if_fwe.c.diff?r1=1.14&r2=1.15&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/fxp/if_fxp.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/nge/if_nge.c.diff?r1=1.23&r2=1.24&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/re/if_re.c.diff?r1=1.11&r2=1.12&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/rl/if_rl.c.diff?r1=1.21&r2=1.22&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/sis/if_sis.c.diff?r1=1.22&r2=1.23&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/vr/if_vr.c.diff?r1=1.22&r2=1.23&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/netif/wi/if_wi.c.diff?r1=1.21&r2=1.22&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/altq/altq_rmclass.c.diff?r1=1.1&r2=1.2&f=u





More information about the Commits mailing list