Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys



Module Name:    src
Committed By:   knakahara
Date:           Thu Jun 21 10:37:50 UTC 2018

Modified Files:
        src/sys/net: if.h
        src/sys/netinet: igmp.c in_l2tp.c ip_encap.c ip_icmp.c ip_mroute.c
        src/sys/netinet6: in6_l2tp.c ip6_mroute.c

Log Message:
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.262 -r1.263 src/sys/net/if.h
cvs rdiff -u -r1.67 -r1.68 src/sys/netinet/igmp.c
cvs rdiff -u -r1.14 -r1.15 src/sys/netinet/in_l2tp.c
cvs rdiff -u -r1.68 -r1.69 src/sys/netinet/ip_encap.c
cvs rdiff -u -r1.171 -r1.172 src/sys/netinet/ip_icmp.c
cvs rdiff -u -r1.159 -r1.160 src/sys/netinet/ip_mroute.c
cvs rdiff -u -r1.15 -r1.16 src/sys/netinet6/in6_l2tp.c
cvs rdiff -u -r1.128 -r1.129 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.




Home | Main Index | Thread Index | Old Index