Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: [netbsd-8] src/sys/netinet6
Module Name: src
Committed By: martin
Date: Thu Jun 7 17:48:31 UTC 2018
Modified Files:
src/sys/netinet6 [netbsd-8]: in6.c in6_var.h mld6.c nd6.c
Log Message:
Pull up following revision(s) (requested by ozaki-r in ticket #842):
sys/netinet6/mld6.c: revision 1.93-1.99
sys/netinet6/in6_var.h: revision 1.99,1.100
sys/netinet6/in6.c: revision 1.267,1.268
sys/netinet6/nd6.c: revision 1.249
Don't hold softnet_lock in mld_timeo
Then we can get rid of remaining abuses of mutex_owned(softnet_lock).
Release in6_multilock on callout_halt of mld_timeo to avoid a deadlock
Improve atomicity of in6_leavegroup and in6_delmulti
Avoid NULL pointer dereference on imm->i6mm_maddr
Make a refcount decrement and a removal from a list of an item atomic
in6m_refcount of an in6m can be incremented if the in6m is on the list
(if_multiaddrs) in in6_addmulti or mld_input. So we must avoid such an
increment when we try to destroy an in6m. To this end we must make
an in6m_refcount decrement and a removal of an in6m from if_multiaddrs
atomic.
Make a deletion of in6m in nd6_rtrequest atomic
Move LIST_REMOVE
mld_stoptimer releases in6_multilock temporarily, so we must LIST_REMOVE first.
Avoid double LIST_REMOVE which corrupts lists
Mark in6m as used for non-DIAGNOSTIC builds.
To generate a diff of this commit:
cvs rdiff -u -r1.245.2.10 -r1.245.2.11 src/sys/netinet6/in6.c
cvs rdiff -u -r1.97 -r1.97.6.1 src/sys/netinet6/in6_var.h
cvs rdiff -u -r1.89.2.1 -r1.89.2.2 src/sys/netinet6/mld6.c
cvs rdiff -u -r1.232.2.7 -r1.232.2.8 src/sys/netinet6/nd6.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