]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Input: edt-ft5x06 - fix use-after-free in debugfs teardown
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Sat, 11 Apr 2026 04:13:43 +0000 (21:13 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 20 Apr 2026 00:54:06 +0000 (17:54 -0700)
commitf5f9e07060519e2287e99019a6de1eb3ebb65c37
tree421b6c1867ee1eeb2c5a9053b53c9135add73fcc
parent875115b82c295277b81b6dfee7debc725f44e854
Input: edt-ft5x06 - fix use-after-free in debugfs teardown

The commit 68743c500c6e ("Input: edt-ft5x06 - use per-client debugfs
directory") removed the manual debugfs teardown, relying on the I2C core
to handle it. However, this creates a window where debugfs files are
still accessible after edt_ft5x06_ts_teardown_debugfs() frees
tsdata->raw_buffer.

To prevent a use-after-free, protect the freeing of raw_buffer with the
device mutex and set raw_buffer to NULL. The debugfs read function
already checks if raw_buffer is NULL under the same mutex, so this
safely avoids the use-after-free.

Fixes: 68743c500c6e ("Input: edt-ft5x06 - use per-client debugfs directory")
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/adnJicDh-bTUaWXP@google.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/touchscreen/edt-ft5x06.c