Module Name: src Committed By: martin Date: Fri Jul 13 14:26:48 UTC 2018
Modified Files: src/sys/net [netbsd-8]: if.h src/sys/netinet [netbsd-8]: igmp.c in_l2tp.c ip_encap.c ip_icmp.c ip_mroute.c src/sys/netinet6 [netbsd-8]: in6_l2tp.c ip6_mroute.c Log Message: Pull up following revision(s) via patch (requested by knakahara in ticket #905): sys/netinet/ip_mroute.c: revision 1.160 sys/netinet6/in6_l2tp.c: revision 1.16 sys/net/if.h: revision 1.263 sys/netinet/in_l2tp.c: revision 1.15 sys/netinet/ip_icmp.c: revision 1.172 sys/netinet/igmp.c: revision 1.68 sys/netinet/ip_encap.c: revision 1.69 sys/netinet6/ip6_mroute.c: revision 1.129 sbappendaddr() is required any lock. Currently, softnet_lock is appropriate. When rip_input() is called as inetsw[].pr_input, rip_iput() is always called with holding softnet_lock, that is, in case of !defined(NET_MPSAFE) it is acquired in ipintr(), otherwise(defined(NET_MPSAFE)) it is acquire in PR_WRAP_INPUT macro. However, some function calls rip_input() directly without holding softnet_lock. That causes assertion failure in sbappendaddr(). rip6_input() and icmp6_rip6_input() are also required softnet_lock for the same reason. To generate a diff of this commit: cvs rdiff -u -r1.239.2.5 -r1.239.2.6 src/sys/net/if.h cvs rdiff -u -r1.64.6.1 -r1.64.6.2 src/sys/netinet/igmp.c cvs rdiff -u -r1.2.8.5 -r1.2.8.6 src/sys/netinet/in_l2tp.c cvs rdiff -u -r1.65.2.2 -r1.65.2.3 src/sys/netinet/ip_encap.c cvs rdiff -u -r1.161.6.2 -r1.161.6.3 src/sys/netinet/ip_icmp.c cvs rdiff -u -r1.146.6.3 -r1.146.6.4 src/sys/netinet/ip_mroute.c cvs rdiff -u -r1.5.8.5 -r1.5.8.6 src/sys/netinet6/in6_l2tp.c cvs rdiff -u -r1.119.6.2 -r1.119.6.3 src/sys/netinet6/ip6_mroute.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.