CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2026/01/02 06:13:29
Modified files:
sys/net : if.c if_var.h
sys/netinet : igmp.c in.c in_var.h
sys/netinet6 : in6.c in6_var.h mld6.c mld6_var.h
Log message:
Protect IGMP and MLD6 fast timer with rwlock.
Multicast interface addresses for IPv4 and IPv6 get their own per
interface lock. Protect the TAILQ if_maddrlist with rwlock
if_maddrlock. Also struct in_multi and in6_multi use this lock for
their state and timer. Sleeps in malloc and IP output are possible.
Run IGMP and MLD6 fast timeout with shared instead of exclusive net
lock.
Reported-by: [email protected]
OK mvs@