]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
Bluetooth: vhci: Prevent use-after-free by removing debugfs files early
authorIvan Pravdin <ipravdin.official@gmail.com>
Wed, 27 Aug 2025 14:53:25 +0000 (10:53 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 9 Sep 2025 16:58:07 +0000 (18:58 +0200)
commit1503756fffe76d5aea2371a4b8dee20c3577bcfd
treeb8690294adc585beccb0b396a90b3a8d2af18482
parentc2e32ac3f107e6802a0ce78a3c071b9c18212b88
Bluetooth: vhci: Prevent use-after-free by removing debugfs files early

[ Upstream commit 28010791193a4503f054e8d69a950ef815deb539 ]

Move the creation of debugfs files into a dedicated function, and ensure
they are explicitly removed during vhci_release(), before associated
data structures are freed.

Previously, debugfs files such as "force_suspend", "force_wakeup", and
others were created under hdev->debugfs but not removed in
vhci_release(). Since vhci_release() frees the backing vhci_data
structure, any access to these files after release would result in
use-after-free errors.

Although hdev->debugfs is later freed in hci_release_dev(), user can
access files after vhci_data is freed but before hdev->debugfs is
released.

Fixes: ab4e4380d4e1 ("Bluetooth: Add vhci devcoredump support")
Signed-off-by: Ivan Pravdin <ipravdin.official@gmail.com>
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/bluetooth/hci_vhci.c