NetBSD-Bugs archive

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

kern/55956: umb(4): device disconnect causes a kernel crash in umb_detach()

>Number:         55956
>Category:       kern
>Synopsis:       umb(4): device disconnect causes a kernel crash in umb_detach()
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jan 24 21:25:00 +0000 2021
>Originator:     Reinhard Speyerer
>Release:        NetBSD 9.1
NetBSD netbsd 9.1 NetBSD 9.1 (GENERIC_UMB) #1: Sat Jan 23 12:41:17 CET 2021  root@netbsd:/usr/src/sys/arch/i386/compile/GENERIC_UMB i386
Disconnecting a USB device handled by umb(4) causes a kernel crash due
to a bug in umb_detach() which has been fixed in rev. 1.19 of if_umb.c
but NetBSD 9.1 sources still use rev. 1.18 of that file.

Build a NetBSD kernel with support for umb(4), connect e.g. a Sierra
Wireless MC7304 set to AT!UDUSBCOMP=8 to a USB port and disconnect it
after umb(4) has attached to it.

Rebuild the kernel with rev. 1.19 of if_umb.c and reboot to make
umb_detach() work correctly:

[   547.733715] umb0 at uhub5 port 1 configuration 1 interface 12
[   547.733715] umb0: Sierra Wireless, Incorporated (0x1199) MC7304 (0x68c0), rev 2.00/0.06, addr 5
[   547.733715] umb0: version 1.0
[   610.574677] WARNING: pipe closed with active xfers on addr 5
[   610.604677] umb0: detached
[   610.604677] umb0: at uhub5 port 1 (addr 5) disconnected

Home | Main Index | Thread Index | Old Index