* [koverstreet-bcachefs:bcachefs-garbage 190/258] kernel/dma/direct.c:147:20: warning: shift count >= width of type
@ 2024-09-09 22:55 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-09-09 22:55 UTC (permalink / raw)
To: Kent Overstreet; +Cc: oe-kbuild-all
tree: https://github.com/koverstreet/bcachefs bcachefs-garbage
head: c88c2220b6b527cec382f06a0ba3feab2a593b37
commit: a2a5fdffbb42082064006597ddabecccdb746d39 [190/258] vmalloc: is_vmalloc_addr_inlined()
config: i386-randconfig-053-20240909 (https://download.01.org/0day-ci/archive/20240910/202409100649.44JPTmEG-lkp@intel.com/config)
compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240910/202409100649.44JPTmEG-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/202409100649.44JPTmEG-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from kernel/dma/direct.c:7:
In file included from include/linux/memblock.h:12:
include/linux/mm.h:1200:17: error: use of undeclared identifier 'VMALLOC_START'; did you mean 'KMALLOC_DMA'?
1200 | return addr >= VMALLOC_START && addr < VMALLOC_END;
| ^~~~~~~~~~~~~
| KMALLOC_DMA
include/linux/slab.h:408:2: note: 'KMALLOC_DMA' declared here
408 | KMALLOC_DMA = KMALLOC_NORMAL,
| ^
In file included from kernel/dma/direct.c:7:
In file included from include/linux/memblock.h:12:
include/linux/mm.h:1200:41: error: use of undeclared identifier 'VMALLOC_END'; did you mean 'KMALLOC_DMA'?
1200 | return addr >= VMALLOC_START && addr < VMALLOC_END;
| ^~~~~~~~~~~
| KMALLOC_DMA
include/linux/slab.h:408:2: note: 'KMALLOC_DMA' declared here
408 | KMALLOC_DMA = KMALLOC_NORMAL,
| ^
>> kernel/dma/direct.c:147:20: warning: shift count >= width of type [-Wshift-count-overflow]
146 | if (IS_ENABLED(CONFIG_ZONE_DMA32) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
147 | phys_limit < DMA_BIT_MASK(64) &&
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
148 | !(gfp & (GFP_DMA32 | GFP_DMA))) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:77:54: note: expanded from macro 'DMA_BIT_MASK'
77 | #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
| ^
include/linux/compiler.h:55:47: note: expanded from macro 'if'
55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:57:52: note: expanded from macro '__trace_if_var'
57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
>> kernel/dma/direct.c:147:20: warning: shift count >= width of type [-Wshift-count-overflow]
146 | if (IS_ENABLED(CONFIG_ZONE_DMA32) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
147 | phys_limit < DMA_BIT_MASK(64) &&
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
148 | !(gfp & (GFP_DMA32 | GFP_DMA))) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:77:54: note: expanded from macro 'DMA_BIT_MASK'
77 | #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
| ^
include/linux/compiler.h:55:47: note: expanded from macro 'if'
55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:57:61: note: expanded from macro '__trace_if_var'
57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
>> kernel/dma/direct.c:147:20: warning: shift count >= width of type [-Wshift-count-overflow]
146 | if (IS_ENABLED(CONFIG_ZONE_DMA32) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
147 | phys_limit < DMA_BIT_MASK(64) &&
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
148 | !(gfp & (GFP_DMA32 | GFP_DMA))) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:77:54: note: expanded from macro 'DMA_BIT_MASK'
77 | #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
| ^
include/linux/compiler.h:55:47: note: expanded from macro 'if'
55 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:57:86: note: expanded from macro '__trace_if_var'
57 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ~~~~~~~~~~~~~~~~~^~~~~
include/linux/compiler.h:68:3: note: expanded from macro '__trace_if_value'
68 | (cond) ? \
| ^~~~
3 warnings and 2 errors generated.
vim +147 kernel/dma/direct.c
aea7e2a86a94b2 kernel/dma/direct.c Christoph Hellwig 2021-10-21 117
26749b3201ab05 kernel/dma/direct.c Christoph Hellwig 2020-06-15 118 static struct page *__dma_direct_alloc_pages(struct device *dev, size_t size,
92826e967535db kernel/dma/direct.c Christoph Hellwig 2022-04-23 119 gfp_t gfp, bool allow_highmem)
a8463d4b0e47d1 lib/dma-noop.c Christian Borntraeger 2016-02-02 120 {
90ae409f9eb3bc kernel/dma/direct.c Christoph Hellwig 2019-08-20 121 int node = dev_to_node(dev);
080321d3b3139b lib/dma-direct.c Christoph Hellwig 2017-12-22 122 struct page *page = NULL;
a7ba70f1787f97 kernel/dma/direct.c Nicolas Saenz Julienne 2019-11-21 123 u64 phys_limit;
a8463d4b0e47d1 lib/dma-noop.c Christian Borntraeger 2016-02-02 124
633d5fce78a61e kernel/dma/direct.c David Rientjes 2020-06-11 125 WARN_ON_ONCE(!PAGE_ALIGNED(size));
633d5fce78a61e kernel/dma/direct.c David Rientjes 2020-06-11 126
aea7e2a86a94b2 kernel/dma/direct.c Christoph Hellwig 2021-10-21 127 if (is_swiotlb_for_alloc(dev))
aea7e2a86a94b2 kernel/dma/direct.c Christoph Hellwig 2021-10-21 128 return dma_direct_alloc_swiotlb(dev, size);
aea7e2a86a94b2 kernel/dma/direct.c Christoph Hellwig 2021-10-21 129
25a4ce564921db kernel/dma/direct.c Petr Tesarik 2023-02-20 130 gfp |= dma_direct_optimal_gfp_mask(dev, &phys_limit);
633d5fce78a61e kernel/dma/direct.c David Rientjes 2020-06-11 131 page = dma_alloc_contiguous(dev, size, gfp);
92826e967535db kernel/dma/direct.c Christoph Hellwig 2022-04-23 132 if (page) {
92826e967535db kernel/dma/direct.c Christoph Hellwig 2022-04-23 133 if (!dma_coherent_ok(dev, page_to_phys(page), size) ||
92826e967535db kernel/dma/direct.c Christoph Hellwig 2022-04-23 134 (!allow_highmem && PageHighMem(page))) {
633d5fce78a61e kernel/dma/direct.c David Rientjes 2020-06-11 135 dma_free_contiguous(dev, page, size);
90ae409f9eb3bc kernel/dma/direct.c Christoph Hellwig 2019-08-20 136 page = NULL;
90ae409f9eb3bc kernel/dma/direct.c Christoph Hellwig 2019-08-20 137 }
92826e967535db kernel/dma/direct.c Christoph Hellwig 2022-04-23 138 }
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 139 again:
90ae409f9eb3bc kernel/dma/direct.c Christoph Hellwig 2019-08-20 140 if (!page)
633d5fce78a61e kernel/dma/direct.c David Rientjes 2020-06-11 141 page = alloc_pages_node(node, gfp, get_order(size));
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 142 if (page && !dma_coherent_ok(dev, page_to_phys(page), size)) {
b1d2dc009dece4 kernel/dma/direct.c Nicolin Chen 2019-05-23 143 dma_free_contiguous(dev, page, size);
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 144 page = NULL;
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 145
de7eab301de788 lib/dma-direct.c Takashi Iwai 2018-04-16 146 if (IS_ENABLED(CONFIG_ZONE_DMA32) &&
a7ba70f1787f97 kernel/dma/direct.c Nicolas Saenz Julienne 2019-11-21 @147 phys_limit < DMA_BIT_MASK(64) &&
de7eab301de788 lib/dma-direct.c Takashi Iwai 2018-04-16 148 !(gfp & (GFP_DMA32 | GFP_DMA))) {
de7eab301de788 lib/dma-direct.c Takashi Iwai 2018-04-16 149 gfp |= GFP_DMA32;
de7eab301de788 lib/dma-direct.c Takashi Iwai 2018-04-16 150 goto again;
de7eab301de788 lib/dma-direct.c Takashi Iwai 2018-04-16 151 }
de7eab301de788 lib/dma-direct.c Takashi Iwai 2018-04-16 152
fbce251baa6e35 kernel/dma/direct.c Christoph Hellwig 2019-02-13 153 if (IS_ENABLED(CONFIG_ZONE_DMA) && !(gfp & GFP_DMA)) {
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 154 gfp = (gfp & ~GFP_DMA32) | GFP_DMA;
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 155 goto again;
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 156 }
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 157 }
95f183916d4b0b lib/dma-direct.c Christoph Hellwig 2018-01-09 158
b18814e767a445 kernel/dma/direct.c Christoph Hellwig 2018-11-04 159 return page;
b18814e767a445 kernel/dma/direct.c Christoph Hellwig 2018-11-04 160 }
b18814e767a445 kernel/dma/direct.c Christoph Hellwig 2018-11-04 161
:::::: The code at line 147 was first introduced by commit
:::::: a7ba70f1787f977f970cd116076c6fce4b9e01cc dma-mapping: treat dev->bus_dma_mask as a DMA limit
:::::: TO: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
:::::: CC: Christoph Hellwig <hch@lst.de>
--
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:[~2024-09-09 22:56 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-09 22:55 [koverstreet-bcachefs:bcachefs-garbage 190/258] kernel/dma/direct.c:147:20: warning: shift count >= width of type 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.