cvs commit: src/sys/conf files src/sys/kern kern_poll.c src/sys/net netisr.c netisr.h src/sys/sys msgport.h src/sys/bus/usb usb_ethersubr.c src/sys/net/ppp if_ppp.c src/sys/netgraph/netgraph ng_base.c src/sys/netinet ip_demux.c ...

Matthew Dillon dillon at crater.dragonflybsd.org
Fri Nov 7 23:58:30 PST 2003


dillon      2003/11/07 23:57:52 PST

DragonFly src repository

  Modified files:
    sys/conf             files 
    sys/kern             kern_poll.c 
    sys/net              netisr.c netisr.h 
    sys/sys              msgport.h 
    sys/bus/usb          usb_ethersubr.c 
    sys/net/ppp          if_ppp.c 
    sys/netgraph/netgraph ng_base.c 
    sys/netinet          if_ether.c ip_input.c ip_var.h tcp_subr.c 
                         tcp_var.h udp_usrreq.c udp_var.h 
    sys/netinet6         ip6_input.c 
    sys/netproto/atalk   ddp_usrreq.c 
    sys/netproto/atm     atm_subr.c 
    sys/netproto/ipx     ipx_input.c 
    sys/netproto/natm    natm.c 
    sys/netproto/ns      ns_input.c 
  Added files:
    sys/netinet          ip_demux.c 
  Log:
  Network threading stage 1/3: netisrs are already software interrupts,
  which means they alraedy run in their own thread.  This commit creates
  multiple supporting threads for netisrs rather then just one and code
  has been added to begin routing packets to particular threads based on
  their content.  Eventually this will lead to us being able to isolate and
  serialize PCBs in particular threads.  The tail end of the ip_input path's
  protocol dispatch, the UIPC (user entry) code, and listen socket have not
  been covered yet and still need to be serialized.
  
  A new debugging sysctl, net.inet.ip.mthread_enable, has been added.  It
  defaults to 1.  If you set this sysctl 0 netisr processing will revert to
  the prior single-threaded behavior.
  
  Submitted-by: Jeffrey Hsu <hsu at xxxxxxxxxxx>
  Additional-work-by: dillon
  
  Revision  Changes    Path
  1.26      +1 -0      src/sys/conf/files
  1.6       +8 -7      src/sys/kern/kern_poll.c
  1.3       +90 -82    src/sys/net/netisr.c
  1.6       +13 -22    src/sys/net/netisr.h
  1.8       +1 -0      src/sys/sys/msgport.h
  1.5       +3 -13     src/sys/bus/usb/usb_ethersubr.c
  1.10      +1 -1      src/sys/net/ppp/if_ppp.c
  1.9       +2 -1      src/sys/netgraph/netgraph/ng_base.c
  1.8       +1 -2      src/sys/netinet/if_ether.c
  1.8       +7 -3      src/sys/netinet/ip_input.c
  1.4       +3 -0      src/sys/netinet/ip_var.h
  1.9       +2 -2      src/sys/netinet/tcp_subr.c
  1.9       +3 -1      src/sys/netinet/tcp_var.h
  1.8       +1 -0      src/sys/netinet/udp_usrreq.c
  1.4       +6 -0      src/sys/netinet/udp_var.h
  1.10      +1 -6      src/sys/netinet6/ip6_input.c
  1.6       +3 -8      src/sys/netproto/atalk/ddp_usrreq.c
  1.8       +1 -1      src/sys/netproto/atm/atm_subr.c
  1.6       +1 -4      src/sys/netproto/ipx/ipx_input.c
  1.7       +2 -8      src/sys/netproto/natm/natm.c
  1.8       +1 -7      src/sys/netproto/ns/ns_input.c


http://www.dragonflybsd.org/cvsweb/src/sys/conf/files.diff?r1=1.25&r2=1.26&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_poll.c.diff?r1=1.5&r2=1.6&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/net/netisr.c.diff?r1=1.2&r2=1.3&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/net/netisr.h.diff?r1=1.5&r2=1.6&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/sys/msgport.h.diff?r1=1.7&r2=1.8&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/bus/usb/usb_ethersubr.c.diff?r1=1.4&r2=1.5&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/net/ppp/if_ppp.c.diff?r1=1.9&r2=1.10&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netgraph/netgraph/ng_base.c.diff?r1=1.8&r2=1.9&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/if_ether.c.diff?r1=1.7&r2=1.8&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/ip_input.c.diff?r1=1.7&r2=1.8&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/ip_var.h.diff?r1=1.3&r2=1.4&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/tcp_subr.c.diff?r1=1.8&r2=1.9&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/tcp_var.h.diff?r1=1.8&r2=1.9&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/udp_usrreq.c.diff?r1=1.7&r2=1.8&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/udp_var.h.diff?r1=1.3&r2=1.4&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netinet6/ip6_input.c.diff?r1=1.9&r2=1.10&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atalk/ddp_usrreq.c.diff?r1=1.5&r2=1.6&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netproto/atm/atm_subr.c.diff?r1=1.7&r2=1.8&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ipx/ipx_input.c.diff?r1=1.5&r2=1.6&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netproto/natm/natm.c.diff?r1=1.6&r2=1.7&f=h
http://www.dragonflybsd.org/cvsweb/src/sys/netproto/ns/ns_input.c.diff?r1=1.7&r2=1.8&f=h





More information about the Commits mailing list