drivers/gpu/drm/nouveau/nvkm/subdev/fb/gb100.c:19:37: warning: result of comparison of constant 4503599627370495 with expression of type 'dma_addr_t' (aka 'unsigned int') is always false
kernel test robot <[email protected]>
| Newsgroups | dev.linux.lists.oe-kbuild-all,dev.linux.lists.llvm,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Hi Timur, FYI, the error/warning still remains. tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: cb8a75eec0877810b50aa1c5a833f929525cd2ee commit: 31d3354f42c0da34415164a1f621a195caa1f1bc drm/nouveau: verify that hardware supports the flush page address date: 9 months ago config: i386-randconfig-007-20260820 (https://download.01.org/0day-ci/archive/20260820/[email protected]/config) compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260820/[email protected]/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 | Fixes: 31d3354f42c0 ("drm/nouveau: verify that hardware supports the flush page address") | Reported-by: kernel test robot <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All warnings (new ones prefixed by >>): >> drivers/gpu/drm/nouveau/nvkm/subdev/fb/gb100.c:19:37: warning: result of comparison of constant 4503599627370495 with expression of type 'dma_addr_t' (aka 'unsigned int') is always false [-Wtautological-constant-out-of-range-compare] 19 | WARN_ON(fb->sysmem.flush_page_addr > DMA_BIT_MASK(52)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ include/asm-generic/bug.h:123:25: note: expanded from macro 'WARN_ON' 123 | int __ret_warn_on = !!(condition); \ | ^~~~~~~~~ 1 warning generated. vim +19 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gb100.c 9 10 static void 11 gb100_fb_sysmem_flush_page_init(struct nvkm_fb *fb) 12 { 13 const u32 addr_hi = upper_32_bits(fb->sysmem.flush_page_addr); 14 const u32 addr_lo = lower_32_bits(fb->sysmem.flush_page_addr); 15 const u32 hshub = DRF_LO(NV_PFB_HSHUB0); 16 struct nvkm_device *device = fb->subdev.device; 17 18 // Ensure that the address is within hardware limits > 19 WARN_ON(fb->sysmem.flush_page_addr > DMA_BIT_MASK(52)); 20 21 nvkm_wr32(device, hshub + NV_PFB_HSHUB_PCIE_FLUSH_SYSMEM_ADDR_HI, addr_hi); 22 nvkm_wr32(device, hshub + NV_PFB_HSHUB_PCIE_FLUSH_SYSMEM_ADDR_LO, addr_lo); 23 nvkm_wr32(device, hshub + NV_PFB_HSHUB_EG_PCIE_FLUSH_SYSMEM_ADDR_HI, addr_hi); 24 nvkm_wr32(device, hshub + NV_PFB_HSHUB_EG_PCIE_FLUSH_SYSMEM_ADDR_LO, addr_lo); 25 } 26 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki