staging/android: sync_debug: unproxify debugfs files' fops
authorNicolai Stange <nicstange@gmail.com>
Fri, 27 May 2016 18:03:54 +0000 (20:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 18 Jun 2016 04:24:41 +0000 (21:24 -0700)
commit0fd9da9a979aecfb9df40dfb3304db2b16fa7e05
treec99216b18739cb51be3698f9cd3dfba091631926
parentb1f656044a9936880d5a7460cd8784b2e124ab87
staging/android: sync_debug: unproxify debugfs files' fops

Since commit 49d200deaa68 ("debugfs: prevent access to removed files'
private data"), a debugfs file's file_operations methods get proxied
through lifetime aware wrappers.

However, only a certain subset of the file_operations members is supported
by debugfs and ->compat_ioctl isn't among them -- it appears to be NULL
from the VFS layer's perspective.

This behaviour breaks the /sys/kernel/debug/sync/sw_sync file introduced
concurrently with commit a44eb74cd413 ("staging/android: move SW_SYNC_USER
to a debugfs file").

Since that file never gets removed, there is no file removal race and thus,
a lifetime checking proxy isn't needed.

Avoid the proxying for /sys/kernel/debug/sync/sw_sync by creating it via
debugfs_create_file_unsafe() rather than debugfs_create_file().
For consistency, do the same for /sys/kernel/debug/sync/info.

Fixes: 49d200deaa68 ("debugfs: prevent access to removed files' private data")
Fixes: a44eb74cd413 ("staging/android: move SW_SYNC_USER to a debugfs file")
Signed-off-by: Nicolai Stange <nicstange@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/android/sync_debug.c