In the Linux kernel, the following vulnerability has been resolved: media: go7007: defer the ALSA v4l2 put until card release go7007_snd_init() already takes a v4l2_device reference for the ALSA side, but go7007_snd_remove() drops it immediately after calling snd_card_free_when_closed(). That is too early when a userspace process still has the capture PCM open. The ALSA card and its PCM callbacks remain alive until the last file is closed, so the release path can still reach struct go7007 through pcm->private_data and call go7007_snd_hw_free() after the V4L2 release path has freed the object. Move the matching v4l2_device_put() to the ALSA card private_free callback so the existing ALSA reference covers the whole deferred card lifetime.
https://git.kernel.org/stable/c/e6f1a1ac9b8ccabfec548aef0d0d93eaf4dba4f4
https://git.kernel.org/stable/c/b7a0de398ad510426db9c8e96c516ef7abf48b0e
https://git.kernel.org/stable/c/9c4f9628b8558c87903492a777834cc5be14ded3
https://git.kernel.org/stable/c/29fe4d38fb59ec28ca656cb2dabc2b0f78e78980
https://git.kernel.org/stable/c/1c9fdd9465211432d5c0ff70caaec0be245823d5
https://git.kernel.org/stable/c/1c57d1a3396b2d767d58f10dff09bb397586c714
https://git.kernel.org/stable/c/1bd456afeb8a515137e567967069fce6f8fcd23e
https://git.kernel.org/stable/c/0745a59945d927652d892437f9647ed6e87c0677