[staging:staging-next 575/620] drivers/staging/lustre/lustre/llite/vvp_dev.c:487 vvp_pgcache_find() warn: always true condition '(vmpage->index <= 4294967295) => (0-u32max <= u32max)'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-next
head:   26a5e9b834a647b9d4dfbeef8b42f201cb3293ae
commit: 85b6542bbade42935386661cb45d90c4e13766b7 [575/620] staging: lustre: llite: remove redundant lookup in dump_pgcache

smatch warnings:
drivers/staging/lustre/lustre/llite/vvp_dev.c:487 vvp_pgcache_find() warn: always true condition '(vmpage->index <= 4294967295) => (0-u32max <= u32max)'

vim +487 drivers/staging/lustre/lustre/llite/vvp_dev.c

   461	
   462	static struct page *vvp_pgcache_find(const struct lu_env *env,
   463					     struct lu_device *dev,
   464					     struct cl_object **clobp, loff_t *pos)
   465	{
   466		struct cl_object     *clob;
   467		struct lu_site       *site;
   468		struct vvp_pgcache_id id;
   469	
   470		site = dev->ld_site;
   471		vvp_pgcache_id_unpack(*pos, &id);
   472	
   473		while (1) {
   474			if (id.vpi_bucket >= CFS_HASH_NHLIST(site->ls_obj_hash))
   475				return NULL;
   476			clob = vvp_pgcache_obj(env, dev, &id);
   477			if (clob) {
   478				struct inode *inode = vvp_object_inode(clob);
   479				struct page *vmpage;
   480				int nr;
   481	
   482				nr = find_get_pages_contig(inode->i_mapping,
   483							   id.vpi_index, 1, &vmpage);
   484				if (nr > 0) {
   485					id.vpi_index = vmpage->index;
   486					/* Cant support over 16T file */
 > 487					if (vmpage->index <= 0xffffffff) {
   488						*clobp = clob;
   489						*pos = vvp_pgcache_id_pack(&id);
   490						return vmpage;
   491					}
   492					put_page(vmpage);
   493				}
   494	
   495				lu_object_ref_del(&clob->co_lu, "dump", current);
   496				cl_object_put(env, clob);
   497			}
   498			/* to the next object. */
   499			++id.vpi_depth;
   500			id.vpi_depth &= 0xf;
   501			if (id.vpi_depth == 0 && ++id.vpi_bucket == 0)
   502				return NULL;
   503			id.vpi_index = 0;
   504		}
   505	}
   506	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux