Date: Wed, 17 Sep 2008 11:40:12 GMT From: Marko Zec <zec@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 149934 for review Message-ID: <200809171140.m8HBeCl4033802@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=149934 Change 149934 by zec@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) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200809171140.m8HBeCl4033802>