Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d7a077d7 authored by Nicolai Stange's avatar Nicolai Stange Committed by Raghavendra Rao Ananta
Browse files

debugfs: debugfs_real_fops(): drop __must_hold sparse annotation



Currently, debugfs_real_fops() is annotated with a
__must_hold(&debugfs_srcu) sparse annotation.

With the conversion of the SRCU based protection of users against
concurrent file removals to a per-file refcount based scheme, this becomes
wrong.

Drop this annotation.

Change-Id: I261ad90f4af2fe28379be1256ec86a8b41f1dd08
Signed-off-by: default avatarNicolai Stange <nicstange@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 055ab8e3e3d52e005d2047b14ce63551b3a8b8b5
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git


Signed-off-by: default avatarRaghavendra Rao Ananta <rananta@codeaurora.org>
parent 9d70524d
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
@@ -98,13 +98,9 @@ EXPORT_SYMBOL_GPL(debugfs_use_file_finish);
#define F_DENTRY(filp) ((filp)->f_path.dentry)

const struct file_operations *debugfs_real_fops(const struct file *filp)
	__must_hold(&debugfs_srcu)
{
	struct debugfs_fsdata *fsd = F_DENTRY(filp)->d_fsdata;
	/*
	 * Neither the pointer to the struct file_operations, nor its
	 * contents ever change -- srcu_dereference() is not needed here.
	 */

	return fsd->real_fops;
}
EXPORT_SYMBOL_GPL(debugfs_real_fops);
+1 −2
Original line number Diff line number Diff line
@@ -95,8 +95,7 @@ int debugfs_use_file_start(const struct dentry *dentry, int *srcu_idx)

void debugfs_use_file_finish(int srcu_idx) __releases(&debugfs_srcu);

const struct file_operations *debugfs_real_fops(const struct file *filp)
	__must_hold(&debugfs_srcu);
const struct file_operations *debugfs_real_fops(const struct file *filp);

int debugfs_file_get(struct dentry *dentry);
void debugfs_file_put(struct dentry *dentry);