[Bug 194727] uaudio device gets disconnected, and hangs usb until everything using /dev/mixer* is closed

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 05 Jun 2022 22:32:20 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194727

--- Comment #79 from Theron Tarigo <theron.tarigo@gmail.com> ---
When an application has a memory leak, that kernel-provided memory resource is
tied up until the application cleans up or dies, but memory allocation
continues to function.
When an application keeps a file open on a filesystem which no longer exists
(physically removed/force unmounted), kernel resources for descriptor
management are tied up until the application cleans up or dies, but filesystem
mounting continues to function.
When an application keeps a block device open after the device is destroyed,
kernel resource are tied up until the application cleans up or dies, but block
device attachment continues to function.

It seems clear that USB audio is the odd one out here, compared to these three
existing features of the kernel's resource management.

How is block device detachment (despite inability to immediately destroy the
file descriptor) implemented?  Trying to find this in the sources is where I
last got stuck when trying to solve the USB audio problem myself.

-- 
You are receiving this mail because:
You are on the CC list for the bug.