Messages in this thread | | | Date | Sat, 18 Nov 2023 02:52:32 +0800 | From | kernel test robot <> | Subject | fs/splice.c:53:19: sparse: sparse: cast from restricted fmode_t |
| |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 6bc40e44f1ddef16a787f3501b97f1fff909177c commit: 0f99fc513ddd28de155c58547824a9fd63daacea splice: clear FMODE_NOWAIT on file if splice/vmsplice is used date: 7 months ago config: sparc-randconfig-r021-20230427 (https://download.01.org/0day-ci/archive/20231118/202311180228.sLGuM7AA-lkp@intel.com/config) compiler: sparc-linux-gcc (GCC) 12.3.0 reproduce: (https://download.01.org/0day-ci/archive/20231118/202311180228.sLGuM7AA-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/202311180228.sLGuM7AA-lkp@intel.com/
sparse warnings: (new ones prefixed by >>) >> fs/splice.c:53:19: sparse: sparse: cast from restricted fmode_t >> fs/splice.c:53:19: sparse: sparse: cast from restricted fmode_t >> fs/splice.c:53:19: sparse: sparse: cast to restricted fmode_t fs/splice.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/xarray.h, ...): include/linux/page-flags.h:246:46: sparse: sparse: self-comparison always evaluates to false
vim +53 fs/splice.c
39 40 /* 41 * Splice doesn't support FMODE_NOWAIT. Since pipes may set this flag to 42 * indicate they support non-blocking reads or writes, we must clear it 43 * here if set to avoid blocking other users of this pipe if splice is 44 * being done on it. 45 */ 46 static noinline void noinline pipe_clear_nowait(struct file *file) 47 { 48 fmode_t fmode = READ_ONCE(file->f_mode); 49 50 do { 51 if (!(fmode & FMODE_NOWAIT)) 52 break; > 53 } while (!try_cmpxchg(&file->f_mode, &fmode, fmode & ~FMODE_NOWAIT)); 54 } 55
-- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
| |