* [brauner-vfs:vfs.misc 10/12] fs/file.c:922:24: sparse: sparse: incorrect type in return expression (different address spaces)
@ 2023-10-09 18:08 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-10-09 18:08 UTC (permalink / raw)
To: Christian Brauner; +Cc: oe-kbuild-all, Christian Brauner
tree: https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git vfs.misc
head: 2c814c8fad597e079cf3e526bf9b7a2572da0091
commit: f5dc7c8f516455fc4b88a36e4bfd9c45c5823404 [10/12] file: convert to SLAB_TYPESAFE_BY_RCU
config: i386-randconfig-061-20231008 (https://download.01.org/0day-ci/archive/20231010/202310100108.itAyBdia-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231010/202310100108.itAyBdia-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202310100108.itAyBdia-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
fs/file.c:379:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file **old_fds @@ got struct file [noderef] __rcu **fd @@
fs/file.c:379:17: sparse: expected struct file **old_fds
fs/file.c:379:17: sparse: got struct file [noderef] __rcu **fd
fs/file.c:380:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file **new_fds @@ got struct file [noderef] __rcu **fd @@
fs/file.c:380:17: sparse: expected struct file **new_fds
fs/file.c:380:17: sparse: got struct file [noderef] __rcu **fd
fs/file.c:395:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
fs/file.c:395:17: sparse: struct file [noderef] __rcu *
fs/file.c:395:17: sparse: struct file *
fs/file.c:430:54: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct file *file @@ got struct file [noderef] __rcu *[assigned] __ret @@
fs/file.c:470:28: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct fdtable [noderef] __rcu *fdt @@ got struct fdtable * @@
fs/file.c:646:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file *file @@ got struct file [noderef] __rcu * @@
fs/file.c:841:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file *file @@ got struct file [noderef] __rcu * @@
fs/file.c:862:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file [noderef] __rcu *file @@ got struct file * @@
fs/file.c:866:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct atomic_t [usertype] *v @@ got struct atomic_t [noderef] __rcu * @@
fs/file.c:869:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file [noderef] __rcu *file_reloaded @@ got struct file * @@
fs/file.c:892:24: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected struct file * @@ got struct file [noderef] __rcu *file_reloaded @@
fs/file.c:894:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct file * @@ got struct file [noderef] __rcu *file @@
fs/file.c:915:22: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file [noderef] __rcu *file @@ got struct file * @@
>> fs/file.c:922:24: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected struct file * @@ got struct file [noderef] __rcu *file @@
fs/file.c:1212:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file *tofree @@ got struct file [noderef] __rcu * @@
vim +922 fs/file.c
897
898 /**
899 * get_file_rcu - try go get a reference to a file under rcu
900 * @f: the file to get a reference on
901 *
902 * This function tries to get a reference on @f carefully verifying that
903 * @f hasn't been reused.
904 *
905 * This function should rarely have to be used and only by users who
906 * understand the implications of SLAB_TYPESAFE_BY_RCU. Try to avoid it.
907 *
908 * Return: Returns @f with the reference count increased or NULL.
909 */
910 struct file *get_file_rcu(struct file __rcu **f)
911 {
912 for (;;) {
913 struct file __rcu *file;
914
915 file = __get_file_rcu(f);
916 if (unlikely(!file))
917 return NULL;
918
919 if (unlikely(IS_ERR(file)))
920 continue;
921
> 922 return file;
923 }
924 }
925 EXPORT_SYMBOL_GPL(get_file_rcu);
926
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-10-09 18:09 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-09 18:08 [brauner-vfs:vfs.misc 10/12] fs/file.c:922:24: sparse: sparse: incorrect type in return expression (different address spaces) kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.