Commit 7360a48b authored by Mike Tipton's avatar Mike Tipton Committed by Greg Kroah-Hartman
Browse files

debugfs: Fix __rcu type comparison warning



Sparse reports the following:

fs/debugfs/file.c:942:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
fs/debugfs/file.c:942:9: sparse:    char [noderef] __rcu *
fs/debugfs/file.c:942:9: sparse:    char *

rcu_assign_pointer() expects that it's assigning to pointers annotated
with __rcu. We can't annotate the generic struct file::private_data, so
cast it instead.

Fixes: 86b54881 ("debugfs: Add write support to debugfs_create_str()")
Reported-by: default avatarkernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202309091933.BRWlSnCq-lkp@intel.com/


Signed-off-by: default avatarMike Tipton <quic_mdtipton@quicinc.com>
Link: https://lore.kernel.org/r/20230922134512.5126-1-quic_mdtipton@quicinc.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 1dc05a27
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -939,7 +939,7 @@ static ssize_t debugfs_write_file_str(struct file *file, const char __user *user
	new[pos + count] = '\0';
	strim(new);

	rcu_assign_pointer(*(char **)file->private_data, new);
	rcu_assign_pointer(*(char __rcu **)file->private_data, new);
	synchronize_rcu();
	kfree(old);