On 07/28/16 10:03, Ryota Ozaki wrote:
Module Name: src
Committed By: ozaki-r
Date: Thu Jul 28 09:03:51 UTC 2016
Modified Files:
src/sys/netinet: if_arp.c in.c
src/sys/netinet6: in6.c nd6_nbr.c
Log Message:
Fix panic on adding/deleting IP addresses under network load
Adding and deleting IP addresses aren't serialized with other network
opeartions, e.g., forwarding packets. So if we add or delete an IP
address under network load, a kernel panic may happen on manipulating
network-related shared objects such as rtentry and rtcache.
To avoid such panicks, we still need to hold softnet_lock in in_control
and in6_control that are called via ioctl and do network-related operations
including IP address additions/deletions.
Fix PR kern/51356
Hi,
This is contributory to the problems in
http://gnats.netbsd.org/49065
http://gnats.netbsd.org/50491
http://gnats.netbsd.org/51395
Where softnet_lock is held by something that sleeps, e.g. a usb transfer.
http://mail-index.netbsd.org/tech-net/2015/12/06/msg005443.html
This patch
http://www.netbsd.org/~skrll/usb.softint.diff
helps, but I'm not sure it deals with all the problems in the network
stack. Is this something you intend to address?
Thanks,
Nick