1fe70e9630
The BKL conversion of this driver seems to have gone wrong. Loading the cx88-blackbird driver deadlocks. The cause: mpeg_ops::open in the cx2388x blackbird driver acquires the device lock and calls the sub-driver's request_acquire, which tries to acquire the lock again. Fix it by clarifying the semantics of request_acquire, request_release, advise_acquire, and advise_release: now all will rely on the caller to acquire the device lock. Based on work by Ben Hutchings <ben@decadent.org.uk>. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=31962 Reported-by: Andi Huber <hobrom@gmx.at> Tested-by: Andi Huber <hobrom@gmx.at> Tested-by: Marlon de Boer <marlon@hyves.nl> Cc: stable@kernel.org Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> |
||
---|---|---|
.. | ||
cx88-alsa.c | ||
cx88-blackbird.c | ||
cx88-cards.c | ||
cx88-core.c | ||
cx88-dsp.c | ||
cx88-dvb.c | ||
cx88-i2c.c | ||
cx88-input.c | ||
cx88-mpeg.c | ||
cx88-reg.h | ||
cx88-tvaudio.c | ||
cx88-vbi.c | ||
cx88-video.c | ||
cx88-vp3054-i2c.c | ||
cx88-vp3054-i2c.h | ||
cx88.h | ||
Kconfig | ||
Makefile |