PERFORCE change 149934 for review
Marko Zec
zec at FreeBSD.org
Wed Sep 17 11:40:13 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=149934
Change 149934 by zec at zec_tinderbox on 2008/09/17 11:39:54
Integrate from vimage-commit2
Affected files ...
.. //depot/projects/vimage/src/sys/arm/arm/genassym.c#5 integrate
.. //depot/projects/vimage/src/sys/boot/i386/libi386/pxe.c#3 integrate
.. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c#2 integrate
.. //depot/projects/vimage/src/sys/compat/linprocfs/linprocfs.c#22 integrate
.. //depot/projects/vimage/src/sys/compat/linux/linux_ioctl.c#13 integrate
.. //depot/projects/vimage/src/sys/compat/linux/linux_misc.c#23 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_auth.c#5 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_frag.c#4 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_log.c#5 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_nat.c#6 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_proxy.c#4 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_state.c#7 integrate
.. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_sync.c#4 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/net/if_pflog.c#4 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/net/if_pfsync.c#8 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/net/pf_norm.c#4 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/net/pf_osfp.c#4 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/net/pf_subr.c#8 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/net/pfvar.h#6 integrate
.. //depot/projects/vimage/src/sys/contrib/pf/netinet/in4_cksum.c#3 integrate
.. //depot/projects/vimage/src/sys/contrib/rdma/rdma_cma.c#4 integrate
.. //depot/projects/vimage/src/sys/ddb/db_textdump.c#6 integrate
.. //depot/projects/vimage/src/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.c#5 integrate
.. //depot/projects/vimage/src/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.c#2 integrate
.. //depot/projects/vimage/src/sys/dev/firewire/firewire.c#16 integrate
.. //depot/projects/vimage/src/sys/dev/sbni/if_sbni.c#5 integrate
.. //depot/projects/vimage/src/sys/dev/sbni/if_sbni_isa.c#5 integrate
.. //depot/projects/vimage/src/sys/dev/sbni/if_sbni_pci.c#5 integrate
.. //depot/projects/vimage/src/sys/dev/sbni/if_sbnireg.h#4 integrate
.. //depot/projects/vimage/src/sys/dev/sbni/if_sbnivar.h#4 integrate
.. //depot/projects/vimage/src/sys/fs/cd9660/cd9660_rrip.c#8 integrate
.. //depot/projects/vimage/src/sys/kern/kern_jail.c#13 integrate
.. //depot/projects/vimage/src/sys/kern/kern_mib.c#15 integrate
.. //depot/projects/vimage/src/sys/kern/kern_prot.c#10 integrate
.. //depot/projects/vimage/src/sys/kern/kern_switch.c#15 integrate
.. //depot/projects/vimage/src/sys/kern/kern_sysctl.c#13 integrate
.. //depot/projects/vimage/src/sys/kern/kern_uuid.c#9 integrate
.. //depot/projects/vimage/src/sys/kern/kern_xxx.c#10 integrate
.. //depot/projects/vimage/src/sys/kern/sys_socket.c#12 integrate
.. //depot/projects/vimage/src/sys/kern/uipc_domain.c#15 integrate
.. //depot/projects/vimage/src/sys/kern/uipc_syscalls.c#21 integrate
.. //depot/projects/vimage/src/sys/kern/vfs_export.c#13 integrate
.. //depot/projects/vimage/src/sys/mips/include/sysarch.h#2 integrate
.. //depot/projects/vimage/src/sys/modules/sbni/Makefile#4 integrate
.. //depot/projects/vimage/src/sys/net/if.c#37 integrate
.. //depot/projects/vimage/src/sys/net/if.h#9 integrate
.. //depot/projects/vimage/src/sys/net/if_ef.c#7 integrate
.. //depot/projects/vimage/src/sys/net/if_enc.c#7 integrate
.. //depot/projects/vimage/src/sys/net/if_ethersubr.c#24 integrate
.. //depot/projects/vimage/src/sys/net/if_faith.c#5 integrate
.. //depot/projects/vimage/src/sys/net/if_gif.c#16 integrate
.. //depot/projects/vimage/src/sys/net/if_gre.c#9 integrate
.. //depot/projects/vimage/src/sys/net/if_loop.c#25 integrate
.. //depot/projects/vimage/src/sys/net/if_mib.c#8 integrate
.. //depot/projects/vimage/src/sys/net/if_stf.c#11 integrate
.. //depot/projects/vimage/src/sys/net/if_tun.c#7 integrate
.. //depot/projects/vimage/src/sys/net/if_vlan.c#11 integrate
.. //depot/projects/vimage/src/sys/net/raw_cb.c#9 integrate
.. //depot/projects/vimage/src/sys/net/raw_usrreq.c#8 integrate
.. //depot/projects/vimage/src/sys/net/route.c#24 integrate
.. //depot/projects/vimage/src/sys/net/rtsock.c#16 integrate
.. //depot/projects/vimage/src/sys/net80211/ieee80211_ddb.c#10 integrate
.. //depot/projects/vimage/src/sys/net80211/ieee80211_var.h#14 integrate
.. //depot/projects/vimage/src/sys/netgraph/atm/ng_atm.c#7 integrate
.. //depot/projects/vimage/src/sys/netgraph/ng_base.c#36 integrate
.. //depot/projects/vimage/src/sys/netgraph/ng_eiface.c#13 integrate
.. //depot/projects/vimage/src/sys/netgraph/ng_gif.c#8 integrate
.. //depot/projects/vimage/src/sys/netgraph/ng_iface.c#10 integrate
.. //depot/projects/vimage/src/sys/netgraph/ng_ipfw.c#2 integrate
.. //depot/projects/vimage/src/sys/netgraph/ng_nat.c#6 integrate
.. //depot/projects/vimage/src/sys/netinet/icmp_var.h#4 integrate
.. //depot/projects/vimage/src/sys/netinet/if_ether.c#23 integrate
.. //depot/projects/vimage/src/sys/netinet/igmp.c#16 integrate
.. //depot/projects/vimage/src/sys/netinet/in.c#15 integrate
.. //depot/projects/vimage/src/sys/netinet/in_gif.c#12 integrate
.. //depot/projects/vimage/src/sys/netinet/in_mcast.c#10 integrate
.. //depot/projects/vimage/src/sys/netinet/in_pcb.c#30 integrate
.. //depot/projects/vimage/src/sys/netinet/in_proto.c#15 integrate
.. //depot/projects/vimage/src/sys/netinet/in_rmx.c#20 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_carp.c#12 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_dummynet.c#11 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_encap.c#4 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_fastfwd.c#12 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_fw.h#14 edit
.. //depot/projects/vimage/src/sys/netinet/ip_fw2.c#43 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_fw_nat.c#7 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_gre.c#4 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_icmp.c#15 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_id.c#5 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_input.c#33 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_ipsec.c#13 edit
.. //depot/projects/vimage/src/sys/netinet/ip_mroute.c#12 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_options.c#14 integrate
.. //depot/projects/vimage/src/sys/netinet/ip_output.c#18 integrate
.. //depot/projects/vimage/src/sys/netinet/raw_ip.c#27 integrate
.. //depot/projects/vimage/src/sys/netinet/sctp_auth.c#13 integrate
.. //depot/projects/vimage/src/sys/netinet/sctp_cc_functions.c#6 integrate
.. //depot/projects/vimage/src/sys/netinet/sctp_crc32.c#6 integrate
.. //depot/projects/vimage/src/sys/netinet/sctp_os.h#8 integrate
.. //depot/projects/vimage/src/sys/netinet/sctp_sysctl.c#11 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_hostcache.c#25 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_input.c#34 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_output.c#22 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_reass.c#7 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_sack.c#11 edit
.. //depot/projects/vimage/src/sys/netinet/tcp_subr.c#50 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_syncache.c#39 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_timer.c#21 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_timewait.c#16 integrate
.. //depot/projects/vimage/src/sys/netinet/tcp_usrreq.c#22 integrate
.. //depot/projects/vimage/src/sys/netinet/udp_usrreq.c#33 integrate
.. //depot/projects/vimage/src/sys/netinet/udp_var.h#7 integrate
.. //depot/projects/vimage/src/sys/netinet/vinet.h#26 integrate
.. //depot/projects/vimage/src/sys/netinet6/dest6.c#8 integrate
.. //depot/projects/vimage/src/sys/netinet6/frag6.c#18 integrate
.. //depot/projects/vimage/src/sys/netinet6/icmp6.c#29 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6.c#21 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6_gif.c#13 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6_ifattach.c#23 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6_pcb.c#21 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6_proto.c#28 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6_rmx.c#19 integrate
.. //depot/projects/vimage/src/sys/netinet6/in6_var.h#6 integrate
.. //depot/projects/vimage/src/sys/netinet6/ip6_forward.c#14 integrate
.. //depot/projects/vimage/src/sys/netinet6/ip6_input.c#33 integrate
.. //depot/projects/vimage/src/sys/netinet6/ip6_ipsec.c#12 integrate
.. //depot/projects/vimage/src/sys/netinet6/ip6_mroute.c#16 integrate
.. //depot/projects/vimage/src/sys/netinet6/ip6_output.c#19 integrate
.. //depot/projects/vimage/src/sys/netinet6/ip6protosw.h#4 integrate
.. //depot/projects/vimage/src/sys/netinet6/mld6.c#15 integrate
.. //depot/projects/vimage/src/sys/netinet6/nd6.c#30 integrate
.. //depot/projects/vimage/src/sys/netinet6/nd6_nbr.c#19 integrate
.. //depot/projects/vimage/src/sys/netinet6/nd6_rtr.c#17 integrate
.. //depot/projects/vimage/src/sys/netinet6/route6.c#9 integrate
.. //depot/projects/vimage/src/sys/netinet6/udp6_usrreq.c#28 integrate
.. //depot/projects/vimage/src/sys/netinet6/vinet6.h#18 integrate
.. //depot/projects/vimage/src/sys/netipsec/ipsec.c#26 integrate
.. //depot/projects/vimage/src/sys/netipsec/ipsec.h#9 integrate
.. //depot/projects/vimage/src/sys/netipsec/ipsec_input.c#16 integrate
.. //depot/projects/vimage/src/sys/netipsec/ipsec_mbuf.c#6 integrate
.. //depot/projects/vimage/src/sys/netipsec/ipsec_output.c#16 integrate
.. //depot/projects/vimage/src/sys/netipsec/key.c#21 integrate
.. //depot/projects/vimage/src/sys/netipsec/xform_ah.c#15 integrate
.. //depot/projects/vimage/src/sys/netipsec/xform_esp.c#14 integrate
.. //depot/projects/vimage/src/sys/netipsec/xform_ipcomp.c#12 integrate
.. //depot/projects/vimage/src/sys/netipsec/xform_ipip.c#16 integrate
.. //depot/projects/vimage/src/sys/nfsclient/nfs_diskless.c#10 integrate
.. //depot/projects/vimage/src/sys/nfsclient/nfs_vfsops.c#21 integrate
.. //depot/projects/vimage/src/sys/nfsclient/nfs_vnops.c#17 integrate
.. //depot/projects/vimage/src/sys/rpc/authunix_prot.c#8 integrate
.. //depot/projects/vimage/src/sys/sys/domain.h#5 integrate
.. //depot/projects/vimage/src/sys/sys/mbuf.h#13 integrate
.. //depot/projects/vimage/src/sys/sys/protosw.h#5 integrate
.. //depot/projects/vimage/src/sys/sys/sched.h#10 integrate
.. //depot/projects/vimage/src/sys/sys/sysctl.h#23 integrate
.. //depot/projects/vimage/src/sys/sys/ucred.h#7 integrate
.. //depot/projects/vimage/src/sys/sys/vimage.h#64 edit
Differences ...
==== //depot/projects/vimage/src/sys/arm/arm/genassym.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/boot/i386/libi386/pxe.c#3 (text+ko) ====
==== //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c#2 (text+ko) ====
==== //depot/projects/vimage/src/sys/compat/linprocfs/linprocfs.c#22 (text+ko) ====
==== //depot/projects/vimage/src/sys/compat/linux/linux_ioctl.c#13 (text+ko) ====
==== //depot/projects/vimage/src/sys/compat/linux/linux_misc.c#23 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_auth.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_frag.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_log.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_nat.c#6 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_proxy.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_state.c#7 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_sync.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/net/if_pflog.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/net/if_pfsync.c#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/net/pf_norm.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/net/pf_osfp.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/net/pf_subr.c#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/net/pfvar.h#6 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/pf/netinet/in4_cksum.c#3 (text+ko) ====
==== //depot/projects/vimage/src/sys/contrib/rdma/rdma_cma.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/ddb/db_textdump.c#6 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.c#5 (text+ko) ====
@@ -240,6 +240,7 @@
/* Register existing TOE interfaces by walking the ifnet chain */
IFNET_RLOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter); /* XXX CURVNET_SET_QUIET() ? */
INIT_VNET_NET(vnet_iter);
@@ -247,6 +248,7 @@
(void)ifaddr_event_handler(NULL, ifp);
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IFNET_RUNLOCK();
return 0;
}
==== //depot/projects/vimage/src/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.c#2 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/firewire/firewire.c#16 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/sbni/if_sbni.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/sbni/if_sbni_isa.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/sbni/if_sbni_pci.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/sbni/if_sbnireg.h#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/dev/sbni/if_sbnivar.h#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/fs/cd9660/cd9660_rrip.c#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_jail.c#13 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_mib.c#15 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_prot.c#10 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_switch.c#15 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_sysctl.c#13 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_uuid.c#9 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/kern_xxx.c#10 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/sys_socket.c#12 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/uipc_domain.c#15 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/uipc_syscalls.c#21 (text+ko) ====
==== //depot/projects/vimage/src/sys/kern/vfs_export.c#13 (text+ko) ====
==== //depot/projects/vimage/src/sys/mips/include/sysarch.h#2 (text+ko) ====
==== //depot/projects/vimage/src/sys/modules/sbni/Makefile#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if.c#37 (text+ko) ====
@@ -1642,7 +1642,7 @@
int s = splimp();
IFNET_RLOCK();
- VNET_LIST_REF();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_NET(vnet_iter);
@@ -1654,7 +1654,7 @@
}
CURVNET_RESTORE();
}
- VNET_LIST_UNREF();
+ VNET_LIST_RUNLOCK();
IFNET_RUNLOCK();
splx(s);
timeout(if_slowtimo, (void *)0, hz / IFNET_SLOWHZ);
==== //depot/projects/vimage/src/sys/net/if.h#9 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_ef.c#7 (text+ko) ====
@@ -491,10 +491,11 @@
struct ef_link *efl = NULL, *efl_temp;
int error = 0, d;
- IFNET_RLOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_NET(vnet_iter);
+ IFNET_RLOCK();
TAILQ_FOREACH(ifp, &V_ifnet, if_link) {
if (ifp->if_type != IFT_ETHER) continue;
EFDEBUG("Found interface %s\n", ifp->if_xname);
@@ -525,9 +526,10 @@
efcount++;
SLIST_INSERT_HEAD(&efdev, efl, el_next);
}
+ IFNET_RUNLOCK();
CURVNET_RESTORE();
}
- IFNET_RUNLOCK();
+ VNET_LIST_RUNLOCK();
if (error) {
if (efl)
SLIST_INSERT_HEAD(&efdev, efl, el_next);
==== //depot/projects/vimage/src/sys/net/if_enc.c#7 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_ethersubr.c#24 (text+ko) ====
@@ -981,7 +981,7 @@
SYSCTL_NODE(_net_link, IFT_ETHER, ether, CTLFLAG_RW, 0, "Ethernet");
#if defined(INET) || defined(INET6)
SYSCTL_V_INT(V_NET, vnet_net, _net_link_ether, OID_AUTO, ipfw, CTLFLAG_RW,
- ether_ipfw, 0, "Pass ether pkts through firewall");
+ ether_ipfw, 0, "Pass ether pkts through firewall");
#endif
#if 0
==== //depot/projects/vimage/src/sys/net/if_faith.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_gif.c#16 (text+ko) ====
@@ -148,7 +148,7 @@
static int parallel_tunnels;
#endif
SYSCTL_V_INT(V_NET, vnet_gif, _net_link_gif, OID_AUTO, parallel_tunnels,
- CTLFLAG_RW, parallel_tunnels, 0, "Allow parallel tunnels?");
+ CTLFLAG_RW, parallel_tunnels, 0, "Allow parallel tunnels?");
VNET_MOD_DECLARE(GIF, gif, NULL, vnet_gif_iattach, NET, NULL)
/* copy from src/sys/net/if_ethersubr.c */
==== //depot/projects/vimage/src/sys/net/if_gre.c#9 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_loop.c#25 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_mib.c#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_stf.c#11 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_tun.c#7 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/if_vlan.c#11 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/raw_cb.c#9 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/raw_usrreq.c#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/route.c#24 (text+ko) ====
==== //depot/projects/vimage/src/sys/net/rtsock.c#16 (text+ko) ====
==== //depot/projects/vimage/src/sys/net80211/ieee80211_ddb.c#10 (text+ko) ====
@@ -195,6 +195,7 @@
break;
}
+ /* XXX to lock or not to lock the vnet list - we are in DDB here? */
VNET_FOREACH(vnet_iter) {
INIT_VNET_NET(vnet_iter);
TAILQ_FOREACH(ifp, &V_ifnet, if_list)
==== //depot/projects/vimage/src/sys/net80211/ieee80211_var.h#14 (text+ko) ====
==== //depot/projects/vimage/src/sys/netgraph/atm/ng_atm.c#7 (text+ko) ====
@@ -1403,6 +1403,7 @@
ng_atm_input_orphan_p = ng_atm_input_orphans;
ng_atm_event_p = ng_atm_event;
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET_QUIET(vnet_iter);
INIT_VNET_NET(vnet_iter);
@@ -1413,6 +1414,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IFNET_RUNLOCK();
break;
@@ -1426,6 +1428,7 @@
ng_atm_input_orphan_p = NULL;
ng_atm_event_p = NULL;
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET_QUIET(vnet_iter);
INIT_VNET_NET(vnet_iter);
@@ -1435,6 +1438,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IFNET_RUNLOCK();
break;
==== //depot/projects/vimage/src/sys/netgraph/ng_base.c#36 (text+ko) ====
==== //depot/projects/vimage/src/sys/netgraph/ng_eiface.c#13 (text+ko) ====
==== //depot/projects/vimage/src/sys/netgraph/ng_gif.c#8 (text+ko) ====
@@ -563,6 +563,7 @@
/* Create nodes for any already-existing gif interfaces */
IFNET_RLOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET_QUIET(vnet_iter); /* XXX revisit quiet */
INIT_VNET_NET(curvnet);
@@ -572,6 +573,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IFNET_RUNLOCK();
break;
==== //depot/projects/vimage/src/sys/netgraph/ng_iface.c#10 (text+ko) ====
==== //depot/projects/vimage/src/sys/netgraph/ng_ipfw.c#2 (text+ko) ====
==== //depot/projects/vimage/src/sys/netgraph/ng_nat.c#6 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/icmp_var.h#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/if_ether.c#23 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/igmp.c#16 (text+ko) ====
@@ -440,6 +440,7 @@
IN_MULTI_LOCK();
igmp_timers_are_running = 0;
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET(vnet_iter);
@@ -457,6 +458,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IN_MULTI_UNLOCK();
}
@@ -468,6 +470,7 @@
IGMP_PRINTF("[igmp.c,_slowtimo] -- > entering \n");
mtx_lock(&igmp_mtx);
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET(vnet_iter);
@@ -480,6 +483,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
mtx_unlock(&igmp_mtx);
IGMP_PRINTF("[igmp.c,_slowtimo] -- > exiting \n");
}
==== //depot/projects/vimage/src/sys/netinet/in.c#15 (text+ko) ====
@@ -207,7 +207,7 @@
in_control(struct socket *so, u_long cmd, caddr_t data, struct ifnet *ifp,
struct thread *td)
{
- INIT_VNET_INET(curvnet); /* so and ifp can be 0 ! */
+ INIT_VNET_INET(curvnet); /* both so and ifp can be NULL here! */
register struct ifreq *ifr = (struct ifreq *)data;
register struct in_ifaddr *ia = 0, *iap;
register struct ifaddr *ifa;
==== //depot/projects/vimage/src/sys/netinet/in_gif.c#12 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/in_mcast.c#10 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/in_pcb.c#30 (text+ko) ====
@@ -1223,6 +1223,7 @@
{
VNET_ITERATOR_DECL(vnet_iter);
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter); /* XXX appease INVARIANTS here */
INIT_VNET_INET(vnet_iter);
@@ -1235,6 +1236,7 @@
V_ipport_tcplastcount = V_ipport_tcpallocs;
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
callout_reset(&ipport_tick_callout, hz, ipport_tick, NULL);
}
==== //depot/projects/vimage/src/sys/netinet/in_proto.c#15 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/in_rmx.c#20 (text+ko) ====
@@ -341,6 +341,7 @@
struct rtqk_arg arg;
int fibnum;
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_NET(vnet_iter);
@@ -358,6 +359,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
}
static int _in_rt_was_here;
==== //depot/projects/vimage/src/sys/netinet/ip_carp.c#12 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_dummynet.c#11 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_encap.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_fastfwd.c#12 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_fw.h#14 (text+ko) ====
@@ -750,20 +750,16 @@
#define V_fw_one_pass VNET_IPFW(fw_one_pass)
#define V_fw_enable VNET_IPFW(fw_enable)
#define V_fw6_enable VNET_IPFW(fw6_enable)
-
#define V_set_disable VNET_IPFW(set_disable)
#define V_fw_deny_unknown_exthdrs VNET_IPFW(fw_deny_unknown_exthdrs)
#define V_fw_verbose VNET_IPFW(fw_verbose)
#define V_verbose_limit VNET_IPFW(verbose_limit)
-
#define V_fw_debug VNET_IPFW(fw_debug)
#define V_autoinc_step VNET_IPFW(autoinc_step)
-
#define V_ipfw_dyn_v VNET_IPFW(ipfw_dyn_v)
#define V_layer3_chain VNET_IPFW(layer3_chain)
#define V_dyn_buckets VNET_IPFW(dyn_buckets)
#define V_curr_dyn_buckets VNET_IPFW(curr_dyn_buckets)
-
#define V_dyn_ack_lifetime VNET_IPFW(dyn_ack_lifetime)
#define V_dyn_syn_lifetime VNET_IPFW(dyn_syn_lifetime)
#define V_dyn_fin_lifetime VNET_IPFW(dyn_fin_lifetime)
@@ -777,7 +773,6 @@
#define V_static_len VNET_IPFW(static_len)
#define V_dyn_count VNET_IPFW(dyn_count)
#define V_dyn_max VNET_IPFW(dyn_max)
-
#define V_norule_counter VNET_IPFW(norule_counter)
#define V_ipfw_timeout VNET_IPFW(ipfw_timeout)
#define V_ifaddr_event_tag VNET_IPFW(ifaddr_event_tag)
==== //depot/projects/vimage/src/sys/netinet/ip_fw2.c#43 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_fw_nat.c#7 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_gre.c#4 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_icmp.c#15 (text+ko) ====
@@ -83,7 +83,7 @@
struct icmpstat icmpstat;
#endif
SYSCTL_V_STRUCT(V_NET, vnet_inet, _net_inet_icmp, ICMPCTL_STATS, stats,
- CTLFLAG_RW, icmpstat, icmpstat, "");
+ CTLFLAG_RW, icmpstat, icmpstat, "");
static int icmpmaskrepl = 0;
SYSCTL_INT(_net_inet_icmp, ICMPCTL_MASKREPL, maskrepl, CTLFLAG_RW,
==== //depot/projects/vimage/src/sys/netinet/ip_id.c#5 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_input.c#33 (text+ko) ====
@@ -1150,6 +1150,7 @@
int i;
IPQ_LOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET(vnet_iter);
@@ -1184,6 +1185,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IPQ_UNLOCK();
}
@@ -1197,6 +1199,7 @@
int i;
IPQ_LOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET(vnet_iter);
@@ -1209,6 +1212,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IPQ_UNLOCK();
in_rtqdrain();
}
==== //depot/projects/vimage/src/sys/netinet/ip_ipsec.c#13 (text+ko) ====
@@ -143,9 +143,9 @@
int
ip_ipsec_input(struct mbuf *m)
{
+#ifdef IPSEC
INIT_VNET_IPSEC(curvnet);
struct ip *ip = mtod(m, struct ip *);
-#ifdef IPSEC
struct m_tag *mtag;
struct tdb_ident *tdbi;
struct secpolicy *sp;
==== //depot/projects/vimage/src/sys/netinet/ip_mroute.c#12 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_options.c#14 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/ip_output.c#18 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/raw_ip.c#27 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/sctp_auth.c#13 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/sctp_cc_functions.c#6 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/sctp_crc32.c#6 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/sctp_os.h#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/sctp_sysctl.c#11 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_hostcache.c#25 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_input.c#34 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_output.c#22 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_reass.c#7 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_sack.c#11 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_subr.c#50 (text+ko) ====
@@ -76,7 +76,7 @@
#endif
#include <netinet/in_var.h>
#include <netinet/ip_var.h>
-#ifdef INET6
+#ifdef IET6
#include <netinet6/ip6_var.h>
#include <netinet6/scope6_var.h>
#include <netinet6/nd6.h>
@@ -945,6 +945,7 @@
if (!do_tcpdrain)
return;
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET(vnet_iter);
@@ -981,6 +982,7 @@
INP_INFO_RUNLOCK(&V_tcbinfo);
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
}
/*
@@ -1592,6 +1594,7 @@
u_int32_t projected_offset;
ISN_LOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter); /* XXX appease INVARIANTS */
INIT_VNET_INET(curvnet);
@@ -1604,6 +1607,7 @@
V_isn_offset_old = V_isn_offset;
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
callout_reset(&isn_callout, hz/100, tcp_isn_tick, NULL);
ISN_UNLOCK();
}
==== //depot/projects/vimage/src/sys/netinet/tcp_syncache.c#39 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_timer.c#21 (text+ko) ====
@@ -128,6 +128,7 @@
{
VNET_ITERATOR_DECL(vnet_iter);
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET(vnet_iter);
@@ -137,6 +138,7 @@
INP_INFO_WUNLOCK(&V_tcbinfo);
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
}
int tcp_syn_backoff[TCP_MAXRXTSHIFT + 1] =
==== //depot/projects/vimage/src/sys/netinet/tcp_timewait.c#16 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/tcp_usrreq.c#22 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/udp_usrreq.c#33 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/udp_var.h#7 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet/vinet.h#26 (text+ko) ====
@@ -194,7 +194,6 @@
#define V_in_ifaddrhashtbl VNET_INET(in_ifaddrhashtbl)
#define V_in_ifaddrhmask VNET_INET(in_ifaddrhmask)
#define V_in_multihead VNET_INET(in_multihead)
-
#define V_llinfo_arp VNET_INET(llinfo_arp)
#define V_arpt_prune VNET_INET(arpt_prune)
#define V_arpt_keep VNET_INET(arpt_keep)
@@ -203,7 +202,6 @@
#define V_arp_proxyall VNET_INET(arp_proxyall)
#define V_subnetsarelocal VNET_INET(subnetsarelocal)
#define V_sameprefixcarponly VNET_INET(sameprefixcarponly)
-
#define V_ipforwarding VNET_INET(ipforwarding)
#define V_ipstealth VNET_INET(ipstealth)
#define V_ipfastforward_active VNET_INET(ipfastforward_active)
@@ -214,13 +212,11 @@
#define V_ip_id VNET_INET(ip_id)
#define V_ip_do_randomid VNET_INET(ip_do_randomid)
#define V_ip_checkinterface VNET_INET(ip_checkinterface)
-
#define V_ipq VNET_INET(ipq)
#define V_ipq_zone VNET_INET(ipq_zone)
#define V_nipq VNET_INET(nipq)
#define V_maxnipq VNET_INET(maxnipq)
#define V_maxfragsperpacket VNET_INET(maxfragsperpacket)
-
#define V_tcb VNET_INET(tcb)
#define V_tcbinfo VNET_INET(tcbinfo)
#define V_tcpstat VNET_INET(tcpstat)
@@ -229,7 +225,6 @@
#define V_tcp_hc_callout VNET_INET(tcp_hc_callout)
#define V_tcp_syncache VNET_INET(tcp_syncache)
#define V_tcp_sc_rst_sock_fail VNET_INET(tcp_sc_rst_sock_fail)
-
#define V_tcp_mssdflt VNET_INET(tcp_mssdflt)
#define V_tcp_v6mssdflt VNET_INET(tcp_v6mssdflt)
#define V_tcp_minmss VNET_INET(tcp_minmss)
@@ -269,39 +264,31 @@
#define V_tcp_reass_qsize VNET_INET(tcp_reass_qsize)
#define V_tcp_reass_maxqlen VNET_INET(tcp_reass_maxqlen)
#define V_tcp_reass_overflows VNET_INET(tcp_reass_overflows)
-
/* pf needs to get to these (!?) */
#define V_isn_secret VNET_INET(isn_secret)
#define V_isn_last_reseed VNET_INET(isn_last_reseed)
#define V_isn_offset VNET_INET(isn_offset)
#define V_isn_offset_old VNET_INET(isn_offset_old)
#define V_isn_ctx VNET_INET(isn_ctx)
-
#define V_udb VNET_INET(udb)
#define V_udbinfo VNET_INET(udbinfo)
#define V_udpstat VNET_INET(udpstat)
#define V_udp_blackhole VNET_INET(udp_blackhole)
-
#define V_ripcb VNET_INET(ripcb)
#define V_ripcbinfo VNET_INET(ripcbinfo)
#define V_ip_mrouter VNET_INET(ip_mrouter)
-
#define V_rsvp_on VNET_INET(rsvp_on)
#define V_ip_rsvp_on VNET_INET(ip_rsvp_on)
#define V_ip_rsvpd VNET_INET(ip_rsvpd)
-
#define V_icmpstat VNET_INET(icmpstat)
#define V_ipstat VNET_INET(ipstat)
#define V_igmpstat VNET_INET(igmpstat)
-
#define V_router_info_head VNET_INET(router_info_head)
-
#define V_rtq_timeout VNET_INET(rtq_timeout)
#define V_rtq_reallyold VNET_INET(rtq_reallyold)
#define V_rtq_minreallyold VNET_INET(rtq_minreallyold)
#define V_rtq_toomany VNET_INET(rtq_toomany)
#define V_rtq_timer VNET_INET(rtq_timer)
-
#define V_ipport_lowfirstauto VNET_INET(ipport_lowfirstauto)
#define V_ipport_lowlastauto VNET_INET(ipport_lowlastauto)
#define V_ipport_firstauto VNET_INET(ipport_firstauto)
@@ -316,7 +303,6 @@
#define V_ipport_stoprandom VNET_INET(ipport_stoprandom)
#define V_ipport_tcpallocs VNET_INET(ipport_tcpallocs)
#define V_ipport_tcplastcount VNET_INET(ipport_tcplastcount)
-
#define V_divcb VNET_INET(divcb)
#define V_divcbinfo VNET_INET(divcbinfo)
#endif /* !_NETINET_VINET_H_ */
==== //depot/projects/vimage/src/sys/netinet6/dest6.c#8 (text+ko) ====
==== //depot/projects/vimage/src/sys/netinet6/frag6.c#18 (text+ko) ====
@@ -697,9 +697,10 @@
struct ip6q *q6;
IP6Q_LOCK();
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
- INIT_VNET_INET6(curvnet);
+ INIT_VNET_INET6(vnet_iter);
q6 = V_ip6q.ip6q_next;
if (q6)
while (q6 != &V_ip6q) {
@@ -724,6 +725,7 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IP6Q_UNLOCK();
#if 0
@@ -753,6 +755,7 @@
if (IP6Q_TRYLOCK() == 0)
return;
+ VNET_LIST_RLOCK();
VNET_FOREACH(vnet_iter) {
CURVNET_SET(vnet_iter);
INIT_VNET_INET6(vnet_iter);
@@ -763,5 +766,6 @@
}
CURVNET_RESTORE();
}
+ VNET_LIST_RUNLOCK();
IP6Q_UNLOCK();
}
==== //depot/projects/vimage/src/sys/netinet6/icmp6.c#29 (text+ko) ====
@@ -401,8 +401,7 @@
icmp6_input(struct mbuf **mp, int *offp, int proto)
{
INIT_VNET_INET6(curvnet);
- /* XXX this bellow is WRONG - MARKO */
- INIT_VPROCG(TD_TO_VPROCG(curthread));
+ INIT_VPROCG(TD_TO_VPROCG(curthread)); /* XXX V_hostname needs this */
struct mbuf *m = *mp, *n;
struct ip6_hdr *ip6, *nip6;
struct icmp6_hdr *icmp6, *nicmp6;
@@ -1175,8 +1174,7 @@
ni6_input(struct mbuf *m, int off)
{
INIT_VNET_INET6(curvnet);
- /* XXX this bellow is WRONG - MARKO */
- INIT_VPROCG(TD_TO_VPROCG(curthread));
+ INIT_VPROCG(TD_TO_VPROCG(curthread)); /* XXX V_hostname needs this */
struct icmp6_nodeinfo *ni6, *nni6;
struct mbuf *n = NULL;
u_int16_t qtype;
==== //depot/projects/vimage/src/sys/netinet6/in6.c#21 (text+ko) ====
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list