cvs commit: src/sys/netinet raw_ip.c src/sys/net/dummynet ip_dummynet.c ip_dummynet.h ip_dummynet_glue.c
Sepherosa Ziehau
sephe at crater.dragonflybsd.org
Sun Nov 18 05:01:52 PST 2007
sephe 2007/11/18 05:00:29 PST
DragonFly src repository
Modified files:
sys/netinet raw_ip.c
sys/net/dummynet ip_dummynet.c ip_dummynet.h
ip_dummynet_glue.c
Log:
CPU localize dummynet(4) step 2/2:
- Add ip_dn_sockopt() in net/dummynet/ip_dummynet_glue.c, which
o Copy socket option from user space.
o Dispatch get/config/delete/flush operation to CPU ip_dn_cpu, so we don't
even need to enter critical section when iterating pipes/flow_sets or
checking whether dummynet has loaded.
o Copy out information from kernel space to user space.
- Adjust raw_ip.c to call ip_dn_sockopt() instead of checking DUMMYNET_LOADED
and calling ip_dn_ctl_ptr.
- Remove now unnecessary critical section protection, however, replying dn_msg,
setting and clearing ip_dn_io_ptr still need to be protected by critical
section, since dn_msg and ip_dn_io_ptr are touched/checked by systimer
callback.
Revision Changes Path
1.27 +2 -8 src/sys/netinet/raw_ip.c
1.52 +15 -48 src/sys/net/dummynet/ip_dummynet.c
1.18 +8 -1 src/sys/net/dummynet/ip_dummynet.h
1.4 +125 -0 src/sys/net/dummynet/ip_dummynet_glue.c
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/raw_ip.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/dummynet/ip_dummynet.c.diff?r1=1.51&r2=1.52&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/dummynet/ip_dummynet.h.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/net/dummynet/ip_dummynet_glue.c.diff?r1=1.3&r2=1.4&f=u
More information about the Commits
mailing list