Subject: kern/34521: aue device panics when receiving router solicitation packets
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <ignatios@cs.uni-bonn.de>
List: netbsd-bugs
Date: 09/14/2006 11:55:00
>Number:         34521
>Category:       kern
>Synopsis:       aue device panics when receiving router solicitation packets
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Sep 14 11:55:00 +0000 2006
>Originator:     Ignatios Souvatzis
>Release:        NetBSD 3.0.1
>Organization:
	
>Environment:
System: NetBSD laptop 3.0.1 NetBSD 3.0.1 (GENERIC_LAPTOP) #1: Mon Jun 19 12:49:37 CEST 2006 ignatios@tiger:/var/itch/sources/3.0/oi/sys/arch/i386/compile/GENERIC_LAPTOP i386
Architecture: i386
Machine: i386
>Description:
	rtsol aue0 crashes the machine instantly.
	traceback is:

	ltsleep,usbd_transfer,usb_do_request_flags_pipe,
	usb_do_request_flags,aue_csr_read_1,aue_setmulti,aue_ioctl,
	in6_addmulti,in6_joingroup,in6_update_ia,in6_ifadd,prelist_update
	nd6_ra_input,icmp6_input
>How-To-Repeat:
	rtsol aue0 on a IP enabled network.
>Fix:
	As far as I can tell, the usb framework called needs to be able to
	sleep. So the fix would be to create a kernel thread and defer
	setting multicast addresses to it. In netbsd-4 and later, 
	workqueue(9) seems to easiest to do - in which case, netbsd-3 would
	stay broken.