diff options
author | Mike Isely <isely@pobox.com> | 2008-04-07 02:22:04 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2008-04-24 14:09:48 -0300 |
commit | e5be15c63804e05b5a94197524023702a259e308 (patch) | |
tree | 4223cab8016088a06d0423e1e41eacb646867c46 /drivers/acpi/executer/exutils.c | |
parent | d913d6303072ca194919d851e6743ad8c3a7563d (diff) |
V4L/DVB (7711): pvrusb2: Fix race on module unload
The pvrusb2 driver - for basically forever - was not enforcing a
proper module tear-down. Kernel threads are used inside the driver
and all must be gone before the module can be safely removed. This
changeset reimplements a chunk of pvrusb2-context.c to enforce this
correctly. Unfortunately this is not a simple fix. The new
implementation also cuts back on kernel thread usage; instead of there
being 1 control thread per instance now it's just 1 control thread
shared by all instances. (By dropping to a single thread then the
module exit function can block on its shutdown and the thread itself
can monitor and cleanly shut down all of the other instances first.)
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/acpi/executer/exutils.c')
0 files changed, 0 insertions, 0 deletions