[intel-tdx:guest 10/76] arch/x86/include/asm/kvm_para.h:38:10: error: implicit declaration of function 'tdx_kvm_hypercall'; did you mean 'kvm_hypercall0'?
by kernel test robot
tree: https://github.com/intel/tdx.git guest
head: 224dd4925275ef73ef78f1412d6f9d03564294eb
commit: 65aab3097498af2947a88010cc4354a2cd7edac1 [10/76] x86/tdx: Wire up KVM hypercalls
config: i386-randconfig-r032-20210616 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/intel/tdx/commit/65aab3097498af2947a88010cc4354a2cd7edac1
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx guest
git checkout 65aab3097498af2947a88010cc4354a2cd7edac1
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/uapi/linux/kvm_para.h:36,
from include/linux/kvm_para.h:5,
from drivers/cpuidle/cpuidle-haltpoll.c:18:
arch/x86/include/asm/kvm_para.h: In function 'kvm_hypercall0':
>> arch/x86/include/asm/kvm_para.h:38:10: error: implicit declaration of function 'tdx_kvm_hypercall'; did you mean 'kvm_hypercall0'? [-Werror=implicit-function-declaration]
38 | return tdx_kvm_hypercall(nr, 0, 0, 0, 0);
| ^~~~~~~~~~~~~~~~~
| kvm_hypercall0
cc1: some warnings being treated as errors
--
In file included from include/uapi/linux/kvm_para.h:36,
from include/linux/kvm_para.h:5,
from arch/x86/kernel/kvm.c:16:
arch/x86/include/asm/kvm_para.h: In function 'kvm_hypercall0':
>> arch/x86/include/asm/kvm_para.h:38:10: error: implicit declaration of function 'tdx_kvm_hypercall'; did you mean 'kvm_hypercall0'? [-Werror=implicit-function-declaration]
38 | return tdx_kvm_hypercall(nr, 0, 0, 0, 0);
| ^~~~~~~~~~~~~~~~~
| kvm_hypercall0
arch/x86/kernel/kvm.c: At top level:
arch/x86/kernel/kvm.c:895:16: warning: no previous prototype for '__kvm_vcpu_is_preempted' [-Wmissing-prototypes]
895 | __visible bool __kvm_vcpu_is_preempted(long cpu)
| ^~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +38 arch/x86/include/asm/kvm_para.h
19
20 #define KVM_HYPERCALL \
21 ALTERNATIVE("vmcall", "vmmcall", X86_FEATURE_VMMCALL)
22
23 /* For KVM hypercalls, a three-byte sequence of either the vmcall or the vmmcall
24 * instruction. The hypervisor may replace it with something else but only the
25 * instructions are guaranteed to be supported.
26 *
27 * Up to four arguments may be passed in rbx, rcx, rdx, and rsi respectively.
28 * The hypercall number should be placed in rax and the return value will be
29 * placed in rax. No other registers will be clobbered unless explicitly
30 * noted by the particular hypercall.
31 */
32
33 static inline long kvm_hypercall0(unsigned int nr)
34 {
35 long ret;
36
37 if (prot_guest_has(PR_GUEST_TDX))
> 38 return tdx_kvm_hypercall(nr, 0, 0, 0, 0);
39
40 asm volatile(KVM_HYPERCALL
41 : "=a"(ret)
42 : "a"(nr)
43 : "memory");
44 return ret;
45 }
46
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[intel-tdx:guest 29/76] arch/x86/mm/ioremap.c:249:10: error: implicit declaration of function 'tdg_shared_mask'
by kernel test robot
tree: https://github.com/intel/tdx.git guest
head: 224dd4925275ef73ef78f1412d6f9d03564294eb
commit: 90e5df51a2da1f8175059239595bfa7c8086b5c3 [29/76] x86/tdx: Make pages shared in ioremap()
config: x86_64-randconfig-b001-20210615 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 64720f57bea6a6bf033feef4a5751ab9c0c3b401)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/intel/tdx/commit/90e5df51a2da1f8175059239595bfa7c8086b5c3
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx guest
git checkout 90e5df51a2da1f8175059239595bfa7c8086b5c3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> arch/x86/mm/ioremap.c:249:10: error: implicit declaration of function 'tdg_shared_mask' [-Werror,-Wimplicit-function-declaration]
prot = pgprot_protected_guest(prot);
^
arch/x86/include/asm/pgtable.h:26:12: note: expanded from macro 'pgprot_protected_guest'
tdg_shared_mask())
^
arch/x86/mm/ioremap.c:721:17: warning: no previous prototype for function 'early_memremap_pgprot_adjust' [-Wmissing-prototypes]
pgprot_t __init early_memremap_pgprot_adjust(resource_size_t phys_addr,
^
arch/x86/mm/ioremap.c:721:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
pgprot_t __init early_memremap_pgprot_adjust(resource_size_t phys_addr,
^
static
1 warning and 1 error generated.
vim +/tdg_shared_mask +249 arch/x86/mm/ioremap.c
161
162 /*
163 * Remap an arbitrary physical address space into the kernel virtual
164 * address space. It transparently creates kernel huge I/O mapping when
165 * the physical address is aligned by a huge page size (1GB or 2MB) and
166 * the requested size is at least the huge page size.
167 *
168 * NOTE: MTRRs can override PAT memory types with a 4KB granularity.
169 * Therefore, the mapping code falls back to use a smaller page toward 4KB
170 * when a mapping range is covered by non-WB type of MTRRs.
171 *
172 * NOTE! We need to allow non-page-aligned mappings too: we will obviously
173 * have to convert them into an offset in a page-aligned mapping, but the
174 * caller shouldn't need to know that small detail.
175 */
176 static void __iomem *
177 __ioremap_caller(resource_size_t phys_addr, unsigned long size,
178 enum page_cache_mode pcm, void *caller, bool encrypted)
179 {
180 unsigned long offset, vaddr;
181 resource_size_t last_addr;
182 const resource_size_t unaligned_phys_addr = phys_addr;
183 const unsigned long unaligned_size = size;
184 struct ioremap_desc io_desc;
185 struct vm_struct *area;
186 enum page_cache_mode new_pcm;
187 pgprot_t prot;
188 int retval;
189 void __iomem *ret_addr;
190
191 /* Don't allow wraparound or zero size */
192 last_addr = phys_addr + size - 1;
193 if (!size || last_addr < phys_addr)
194 return NULL;
195
196 if (!phys_addr_valid(phys_addr)) {
197 printk(KERN_WARNING "ioremap: invalid physical address %llx\n",
198 (unsigned long long)phys_addr);
199 WARN_ON_ONCE(1);
200 return NULL;
201 }
202
203 __ioremap_check_mem(phys_addr, size, &io_desc);
204
205 /*
206 * Don't allow anybody to remap normal RAM that we're using..
207 */
208 if (io_desc.flags & IORES_MAP_SYSTEM_RAM) {
209 WARN_ONCE(1, "ioremap on RAM at %pa - %pa\n",
210 &phys_addr, &last_addr);
211 return NULL;
212 }
213
214 /*
215 * Mappings have to be page-aligned
216 */
217 offset = phys_addr & ~PAGE_MASK;
218 phys_addr &= PHYSICAL_PAGE_MASK;
219 size = PAGE_ALIGN(last_addr+1) - phys_addr;
220
221 retval = memtype_reserve(phys_addr, (u64)phys_addr + size,
222 pcm, &new_pcm);
223 if (retval) {
224 printk(KERN_ERR "ioremap memtype_reserve failed %d\n", retval);
225 return NULL;
226 }
227
228 if (pcm != new_pcm) {
229 if (!is_new_memtype_allowed(phys_addr, size, pcm, new_pcm)) {
230 printk(KERN_ERR
231 "ioremap error for 0x%llx-0x%llx, requested 0x%x, got 0x%x\n",
232 (unsigned long long)phys_addr,
233 (unsigned long long)(phys_addr + size),
234 pcm, new_pcm);
235 goto err_free_memtype;
236 }
237 pcm = new_pcm;
238 }
239
240 /*
241 * If the page being mapped is in memory and SEV is active then
242 * make sure the memory encryption attribute is enabled in the
243 * resulting mapping.
244 */
245 prot = PAGE_KERNEL_IO;
246 if ((io_desc.flags & IORES_MAP_ENCRYPTED) || encrypted)
247 prot = pgprot_encrypted(prot);
248 else if (prot_guest_has(PR_GUEST_SHARED_MAPPING_INIT))
> 249 prot = pgprot_protected_guest(prot);
250
251 switch (pcm) {
252 case _PAGE_CACHE_MODE_UC:
253 default:
254 prot = __pgprot(pgprot_val(prot) |
255 cachemode2protval(_PAGE_CACHE_MODE_UC));
256 break;
257 case _PAGE_CACHE_MODE_UC_MINUS:
258 prot = __pgprot(pgprot_val(prot) |
259 cachemode2protval(_PAGE_CACHE_MODE_UC_MINUS));
260 break;
261 case _PAGE_CACHE_MODE_WC:
262 prot = __pgprot(pgprot_val(prot) |
263 cachemode2protval(_PAGE_CACHE_MODE_WC));
264 break;
265 case _PAGE_CACHE_MODE_WT:
266 prot = __pgprot(pgprot_val(prot) |
267 cachemode2protval(_PAGE_CACHE_MODE_WT));
268 break;
269 case _PAGE_CACHE_MODE_WB:
270 break;
271 }
272
273 /*
274 * Ok, go for it..
275 */
276 area = get_vm_area_caller(size, VM_IOREMAP, caller);
277 if (!area)
278 goto err_free_memtype;
279 area->phys_addr = phys_addr;
280 vaddr = (unsigned long) area->addr;
281
282 if (memtype_kernel_map_sync(phys_addr, size, pcm))
283 goto err_free_area;
284
285 if (ioremap_page_range(vaddr, vaddr + size, phys_addr, prot))
286 goto err_free_area;
287
288 ret_addr = (void __iomem *) (vaddr + offset);
289 mmiotrace_ioremap(unaligned_phys_addr, unaligned_size, ret_addr);
290
291 /*
292 * Check if the request spans more than any BAR in the iomem resource
293 * tree.
294 */
295 if (iomem_map_sanity_check(unaligned_phys_addr, unaligned_size))
296 pr_warn("caller %pS mapping multiple BARs\n", caller);
297
298 return ret_addr;
299 err_free_area:
300 free_vm_area(area);
301 err_free_memtype:
302 memtype_free(phys_addr, phys_addr + size);
303 return NULL;
304 }
305
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[westeri-thunderbolt:next 14/29] drivers/thunderbolt/test.c:2209:13: warning: stack frame size of 10688 bytes in function 'tb_test_credit_alloc_all'
by kernel test robot
Hi Mika,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt.git next
head: b18f901382fdb74a138a0bf30458c54a023a1d86
commit: bfa8f78e06ed0b495a5736380de0e7f833a5efbe [14/29] thunderbolt: Add KUnit tests for credit allocation
config: riscv-randconfig-r026-20210615 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 64720f57bea6a6bf033feef4a5751ab9c0c3b401)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install riscv cross compiling tool for clang build
# apt-get install binutils-riscv64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt.git/c...
git remote add westeri-thunderbolt https://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt.git
git fetch --no-tags westeri-thunderbolt next
git checkout bfa8f78e06ed0b495a5736380de0e7f833a5efbe
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/thunderbolt/test.c:2209:13: warning: stack frame size of 10688 bytes in function 'tb_test_credit_alloc_all' [-Wframe-larger-than=]
static void tb_test_credit_alloc_all(struct kunit *test)
^
1 warning generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for LOCKDEP
Depends on DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT && (FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86)
Selected by
- LOCK_STAT && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- DEBUG_LOCK_ALLOC && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
WARNING: unmet direct dependencies detected for ERRATA_SIFIVE
Depends on RISCV_ERRATA_ALTERNATIVE
Selected by
- SOC_SIFIVE
vim +/tb_test_credit_alloc_all +2209 drivers/thunderbolt/test.c
2208
> 2209 static void tb_test_credit_alloc_all(struct kunit *test)
2210 {
2211 struct tb_port *up, *down, *in, *out, *nhi, *port;
2212 struct tb_tunnel *pcie_tunnel, *dp_tunnel1, *dp_tunnel2, *usb3_tunnel;
2213 struct tb_tunnel *dma_tunnel1, *dma_tunnel2;
2214 struct tb_switch *host, *dev;
2215 struct tb_path *path;
2216
2217 /*
2218 * Create PCIe, 2 x DP, USB 3.x and two DMA tunnels from host to
2219 * device. Expectation is that all these can be established with
2220 * the default credit allocation found in Intel hardware.
2221 */
2222
2223 host = alloc_host_usb4(test);
2224 dev = alloc_dev_usb4(test, host, 0x1, true);
2225
2226 down = &host->ports[8];
2227 up = &dev->ports[9];
2228 pcie_tunnel = tb_tunnel_alloc_pci(NULL, up, down);
2229 KUNIT_ASSERT_TRUE(test, pcie_tunnel != NULL);
2230 KUNIT_ASSERT_EQ(test, pcie_tunnel->npaths, (size_t)2);
2231
2232 path = pcie_tunnel->paths[0];
2233 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2234 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2235 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2236 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2237 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 32U);
2238
2239 path = pcie_tunnel->paths[1];
2240 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2241 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2242 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2243 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2244 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 64U);
2245
2246 in = &host->ports[5];
2247 out = &dev->ports[13];
2248
2249 dp_tunnel1 = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
2250 KUNIT_ASSERT_TRUE(test, dp_tunnel1 != NULL);
2251 KUNIT_ASSERT_EQ(test, dp_tunnel1->npaths, (size_t)3);
2252
2253 path = dp_tunnel1->paths[0];
2254 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2255 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 12U);
2256 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2257 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 18U);
2258 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 0U);
2259
2260 path = dp_tunnel1->paths[1];
2261 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2262 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2263 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2264 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2265 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2266
2267 path = dp_tunnel1->paths[2];
2268 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2269 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2270 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2271 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2272 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2273
2274 in = &host->ports[6];
2275 out = &dev->ports[14];
2276
2277 dp_tunnel2 = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
2278 KUNIT_ASSERT_TRUE(test, dp_tunnel2 != NULL);
2279 KUNIT_ASSERT_EQ(test, dp_tunnel2->npaths, (size_t)3);
2280
2281 path = dp_tunnel2->paths[0];
2282 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2283 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 12U);
2284 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2285 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 18U);
2286 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 0U);
2287
2288 path = dp_tunnel2->paths[1];
2289 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2290 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2291 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2292 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2293 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2294
2295 path = dp_tunnel2->paths[2];
2296 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2297 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2298 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2299 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2300 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2301
2302 down = &host->ports[12];
2303 up = &dev->ports[16];
2304 usb3_tunnel = tb_tunnel_alloc_usb3(NULL, up, down, 0, 0);
2305 KUNIT_ASSERT_TRUE(test, usb3_tunnel != NULL);
2306 KUNIT_ASSERT_EQ(test, usb3_tunnel->npaths, (size_t)2);
2307
2308 path = usb3_tunnel->paths[0];
2309 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2310 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2311 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2312 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2313 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 14U);
2314
2315 path = usb3_tunnel->paths[1];
2316 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2317 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2318 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2319 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2320 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 32U);
2321
2322 nhi = &host->ports[7];
2323 port = &dev->ports[3];
2324
2325 dma_tunnel1 = tb_tunnel_alloc_dma(NULL, nhi, port, 8, 1, 8, 1);
2326 KUNIT_ASSERT_TRUE(test, dma_tunnel1 != NULL);
2327 KUNIT_ASSERT_EQ(test, dma_tunnel1->npaths, (size_t)2);
2328
2329 path = dma_tunnel1->paths[0];
2330 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2331 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2332 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 14U);
2333 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2334 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 14U);
2335
2336 path = dma_tunnel1->paths[1];
2337 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2338 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2339 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2340 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2341 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 14U);
2342
2343 dma_tunnel2 = tb_tunnel_alloc_dma(NULL, nhi, port, 9, 2, 9, 2);
2344 KUNIT_ASSERT_TRUE(test, dma_tunnel2 != NULL);
2345 KUNIT_ASSERT_EQ(test, dma_tunnel2->npaths, (size_t)2);
2346
2347 path = dma_tunnel2->paths[0];
2348 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2349 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2350 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 14U);
2351 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2352 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2353
2354 path = dma_tunnel2->paths[1];
2355 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2356 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2357 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2358 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2359 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2360
2361 tb_tunnel_free(dma_tunnel2);
2362 tb_tunnel_free(dma_tunnel1);
2363 tb_tunnel_free(usb3_tunnel);
2364 tb_tunnel_free(dp_tunnel2);
2365 tb_tunnel_free(dp_tunnel1);
2366 tb_tunnel_free(pcie_tunnel);
2367 }
2368
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[xlnx:xlnx_rebase_v5.4 1102/1762] drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:45:9: error: implicit declaration of function 'in_be32'
by kernel test robot
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.4
head: d128303e4c53bcf7775c46771bf64c71596f3303
commit: bbcf6f9bb1bc206330ca4d423e5a3966d8d82110 [1102/1762] net: xilinx: Add support for PL TSN IP features
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/Xilinx/linux-xlnx/commit/bbcf6f9bb1bc206330ca4d423e5a3...
git remote add xlnx https://github.com/Xilinx/linux-xlnx
git fetch --no-tags xlnx xlnx_rebase_v5.4
git checkout bbcf6f9bb1bc206330ca4d423e5a3966d8d82110
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c: In function 'xlnx_tod_read':
>> drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:45:9: error: implicit declaration of function 'in_be32' [-Werror=implicit-function-declaration]
45 | nsec = in_be32(timer->baseaddr + XTIMER1588_CURRENT_RTC_NS);
| ^~~~~~~
In file included from include/linux/kernel.h:15,
from include/linux/list.h:9,
from include/linux/kobject.h:19,
from include/linux/device.h:16,
from drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:18:
drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c: In function 'xlnx_rtc_offset_write':
drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:55:11: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'time64_t' {aka 'const long long int'} [-Wformat=]
55 | pr_debug("%s: sec: %ld nsec: %ld\n", __func__, ts->tv_sec, ts->tv_nsec);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/printk.h:288:21: note: in definition of macro 'pr_fmt'
288 | #define pr_fmt(fmt) fmt
| ^~~
include/linux/dynamic_debug.h:143:2: note: in expansion of macro '__dynamic_func_call'
143 | __dynamic_func_call(__UNIQUE_ID(ddebug), fmt, func, ##__VA_ARGS__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/dynamic_debug.h:153:2: note: in expansion of macro '_dynamic_func_call'
153 | _dynamic_func_call(fmt, __dynamic_pr_debug, \
| ^~~~~~~~~~~~~~~~~~
include/linux/printk.h:336:2: note: in expansion of macro 'dynamic_pr_debug'
336 | dynamic_pr_debug(fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~~~~~~
drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:55:2: note: in expansion of macro 'pr_debug'
55 | pr_debug("%s: sec: %ld nsec: %ld\n", __func__, ts->tv_sec, ts->tv_nsec);
| ^~~~~~~~
drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:55:23: note: format string is defined here
55 | pr_debug("%s: sec: %ld nsec: %ld\n", __func__, ts->tv_sec, ts->tv_nsec);
| ~~^
| |
| long int
| %lld
>> drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c:57:2: error: implicit declaration of function 'out_be32' [-Werror=implicit-function-declaration]
57 | out_be32((timer->baseaddr + XTIMER1588_RTC_OFFSET_SEC_H), 0);
| ^~~~~~~~
cc1: some warnings being treated as errors
--
In file included from drivers/net/ethernet/xilinx/xilinx_tsn_switch.h:21,
from drivers/net/ethernet/xilinx/xilinx_tsn_switch.c:18:
drivers/net/ethernet/xilinx/xilinx_tsn_switch.c: In function 'tsnswitch_probe':
>> drivers/net/ethernet/xilinx/xilinx_axienet.h:910:2: warning: 'pmap' may be used uninitialized in this function [-Wmaybe-uninitialized]
910 | iowrite32(value, lp->regs + offset);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/xilinx/xilinx_tsn_switch.c:580:6: note: 'pmap' was declared here
580 | u32 pmap;
| ^~~~
vim +/in_be32 +45 drivers/net/ethernet/xilinx/xilinx_tsn_ptp_clock.c
40
41 static void xlnx_tod_read(struct xlnx_ptp_timer *timer, struct timespec64 *ts)
42 {
43 u32 sec, nsec;
44
> 45 nsec = in_be32(timer->baseaddr + XTIMER1588_CURRENT_RTC_NS);
46 sec = in_be32(timer->baseaddr + XTIMER1588_CURRENT_RTC_SEC_L);
47
48 ts->tv_sec = sec;
49 ts->tv_nsec = nsec;
50 }
51
52 static void xlnx_rtc_offset_write(struct xlnx_ptp_timer *timer,
53 const struct timespec64 *ts)
54 {
> 55 pr_debug("%s: sec: %ld nsec: %ld\n", __func__, ts->tv_sec, ts->tv_nsec);
56
> 57 out_be32((timer->baseaddr + XTIMER1588_RTC_OFFSET_SEC_H), 0);
58 out_be32((timer->baseaddr + XTIMER1588_RTC_OFFSET_SEC_L),
59 (ts->tv_sec));
60 out_be32((timer->baseaddr + XTIMER1588_RTC_OFFSET_NS), ts->tv_nsec);
61 }
62
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[linux-next:master 8181/10007] drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:661:6: warning: no previous prototype for 'dce110_enable_stream'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 19ae1f2bd9c091059f80646604ccef8a1e614f57
commit: 4d45a22458f52a3daf222287d9e578d3ec418422 [8181/10007] drm: display: Remove duplicate include in dce110
config: csky-randconfig-r016-20210615 (attached as .config)
compiler: csky-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout 4d45a22458f52a3daf222287d9e578d3ec418422
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=csky
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:661:6: warning: no previous prototype for 'dce110_enable_stream' [-Wmissing-prototypes]
661 | void dce110_enable_stream(struct pipe_ctx *pipe_ctx)
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:1133:6: warning: no previous prototype for 'dce110_disable_stream' [-Wmissing-prototypes]
1133 | void dce110_disable_stream(struct pipe_ctx *pipe_ctx)
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:1159:6: warning: no previous prototype for 'dce110_unblank_stream' [-Wmissing-prototypes]
1159 | void dce110_unblank_stream(struct pipe_ctx *pipe_ctx,
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:1785:6: warning: no previous prototype for 'dce110_set_safe_displaymarks' [-Wmissing-prototypes]
1785 | void dce110_set_safe_displaymarks(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:2566:6: warning: no previous prototype for 'dce110_prepare_bandwidth' [-Wmissing-prototypes]
2566 | void dce110_prepare_bandwidth(
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:2580:6: warning: no previous prototype for 'dce110_optimize_bandwidth' [-Wmissing-prototypes]
2580 | void dce110_optimize_bandwidth(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:2863:6: warning: no previous prototype for 'dce110_set_backlight_level' [-Wmissing-prototypes]
2863 | bool dce110_set_backlight_level(struct pipe_ctx *pipe_ctx,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:2897:6: warning: no previous prototype for 'dce110_set_abm_immediate_disable' [-Wmissing-prototypes]
2897 | void dce110_set_abm_immediate_disable(struct pipe_ctx *pipe_ctx)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:2910:6: warning: no previous prototype for 'dce110_set_pipe' [-Wmissing-prototypes]
2910 | void dce110_set_pipe(struct pipe_ctx *pipe_ctx)
| ^~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c:2976:6: warning: no previous prototype for 'dce110_hw_sequencer_construct' [-Wmissing-prototypes]
2976 | void dce110_hw_sequencer_construct(struct dc *dc)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for LOCKDEP
Depends on DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT && (FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86)
Selected by
- PROVE_LOCKING && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- DEBUG_LOCK_ALLOC && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
vim +/dce110_enable_stream +661 drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_hw_sequencer.c
4562236b3bc0a2 Harry Wentland 2017-09-12 660
4562236b3bc0a2 Harry Wentland 2017-09-12 @661 void dce110_enable_stream(struct pipe_ctx *pipe_ctx)
4562236b3bc0a2 Harry Wentland 2017-09-12 662 {
4562236b3bc0a2 Harry Wentland 2017-09-12 663 enum dc_lane_count lane_count =
ceb3dbb4690db8 Jun Lei 2018-11-09 664 pipe_ctx->stream->link->cur_link_settings.lane_count;
4fa086b9b66408 Leo (Sunpeng Li 2017-07-25 665) struct dc_crtc_timing *timing = &pipe_ctx->stream->timing;
ceb3dbb4690db8 Jun Lei 2018-11-09 666 struct dc_link *link = pipe_ctx->stream->link;
f42ea55be11147 Anthony Koo 2019-11-05 667 const struct dc *dc = link->dc;
f215a57dca691c Eric Yang 2018-02-21 668
4562236b3bc0a2 Harry Wentland 2017-09-12 669 uint32_t active_total_with_borders;
4562236b3bc0a2 Harry Wentland 2017-09-12 670 uint32_t early_control = 0;
6b670fa965b620 Harry Wentland 2017-07-30 671 struct timing_generator *tg = pipe_ctx->stream_res.tg;
4562236b3bc0a2 Harry Wentland 2017-09-12 672
f215a57dca691c Eric Yang 2018-02-21 673 /* For MST, there are multiply stream go to only one link.
f215a57dca691c Eric Yang 2018-02-21 674 * connect DIG back_end to front_end while enable_stream and
f215a57dca691c Eric Yang 2018-02-21 675 * disconnect them during disable_stream
f215a57dca691c Eric Yang 2018-02-21 676 * BY this, it is logic clean to separate stream and link */
f215a57dca691c Eric Yang 2018-02-21 677 link->link_enc->funcs->connect_dig_be_to_fe(link->link_enc,
f215a57dca691c Eric Yang 2018-02-21 678 pipe_ctx->stream_res.stream_enc->id, true);
f215a57dca691c Eric Yang 2018-02-21 679
f42ea55be11147 Anthony Koo 2019-11-05 680 dc->hwss.update_info_frame(pipe_ctx);
f215a57dca691c Eric Yang 2018-02-21 681
4562236b3bc0a2 Harry Wentland 2017-09-12 682 /* enable early control to avoid corruption on DP monitor*/
4562236b3bc0a2 Harry Wentland 2017-09-12 683 active_total_with_borders =
4562236b3bc0a2 Harry Wentland 2017-09-12 684 timing->h_addressable
4562236b3bc0a2 Harry Wentland 2017-09-12 685 + timing->h_border_left
4562236b3bc0a2 Harry Wentland 2017-09-12 686 + timing->h_border_right;
4562236b3bc0a2 Harry Wentland 2017-09-12 687
4562236b3bc0a2 Harry Wentland 2017-09-12 688 if (lane_count != 0)
4562236b3bc0a2 Harry Wentland 2017-09-12 689 early_control = active_total_with_borders % lane_count;
4562236b3bc0a2 Harry Wentland 2017-09-12 690
4562236b3bc0a2 Harry Wentland 2017-09-12 691 if (early_control == 0)
4562236b3bc0a2 Harry Wentland 2017-09-12 692 early_control = lane_count;
4562236b3bc0a2 Harry Wentland 2017-09-12 693
4562236b3bc0a2 Harry Wentland 2017-09-12 694 tg->funcs->set_early_control(tg, early_control);
4562236b3bc0a2 Harry Wentland 2017-09-12 695
4562236b3bc0a2 Harry Wentland 2017-09-12 696 /* enable audio only within mode set */
afaacef4827592 Harry Wentland 2017-07-30 697 if (pipe_ctx->stream_res.audio != NULL) {
4562236b3bc0a2 Harry Wentland 2017-09-12 698 if (dc_is_dp_signal(pipe_ctx->stream->signal))
8e9c4c8cf35ff2 Harry Wentland 2017-07-30 699 pipe_ctx->stream_res.stream_enc->funcs->dp_audio_enable(pipe_ctx->stream_res.stream_enc);
4562236b3bc0a2 Harry Wentland 2017-09-12 700 }
4562236b3bc0a2 Harry Wentland 2017-09-12 701
f215a57dca691c Eric Yang 2018-02-21 702
f215a57dca691c Eric Yang 2018-02-21 703
4562236b3bc0a2 Harry Wentland 2017-09-12 704
:::::: The code at line 661 was first introduced by commit
:::::: 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c drm/amd/dc: Add dc display driver (v2)
:::::: TO: Harry Wentland <harry.wentland(a)amd.com>
:::::: CC: Alex Deucher <alexander.deucher(a)amd.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[linux-nvme:nvme-5.14 32/32] drivers/nvme/target/zns.c:257:6: warning: no previous prototype for function 'nvmet_bdev_zone_zmgmt_recv_work'
by kernel test robot
tree: git://git.infradead.org/nvme.git nvme-5.14
head: 9653e01d9c3c46930da3f007a39a2aaf230bd8ff
commit: 9653e01d9c3c46930da3f007a39a2aaf230bd8ff [32/32] nvmet: add ZBD over ZNS backend support
config: x86_64-randconfig-a014-20210615 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 64720f57bea6a6bf033feef4a5751ab9c0c3b401)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git remote add linux-nvme git://git.infradead.org/nvme.git
git fetch --no-tags linux-nvme nvme-5.14
git checkout 9653e01d9c3c46930da3f007a39a2aaf230bd8ff
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/nvme/target/zns.c:257:6: warning: no previous prototype for function 'nvmet_bdev_zone_zmgmt_recv_work' [-Wmissing-prototypes]
void nvmet_bdev_zone_zmgmt_recv_work(struct work_struct *w)
^
drivers/nvme/target/zns.c:257:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void nvmet_bdev_zone_zmgmt_recv_work(struct work_struct *w)
^
static
1 warning generated.
vim +/nvmet_bdev_zone_zmgmt_recv_work +257 drivers/nvme/target/zns.c
256
> 257 void nvmet_bdev_zone_zmgmt_recv_work(struct work_struct *w)
258 {
259 struct nvmet_req *req = container_of(w, struct nvmet_req, z.zmgmt_work);
260 sector_t start_sect = nvmet_lba_to_sect(req->ns, req->cmd->zmr.slba);
261 unsigned long req_slba_nr_zones = nvmet_req_nr_zones_from_slba(req);
262 u32 out_bufsize = (le32_to_cpu(req->cmd->zmr.numd) + 1) << 2;
263 __le64 nr_zones;
264 u16 status;
265 int ret;
266 struct nvmet_report_zone_data rz_data = {
267 .out_nr_zones = get_nr_zones_from_buf(req, out_bufsize),
268 /* leave the place for report zone header */
269 .out_buf_offset = sizeof(struct nvme_zone_report),
270 .zrasf = req->cmd->zmr.zrasf,
271 .nr_zones = 0,
272 .req = req,
273 };
274
275 status = nvmet_bdev_validate_zone_mgmt_recv(req);
276 if (status)
277 goto out;
278
279 if (!req_slba_nr_zones) {
280 status = NVME_SC_SUCCESS;
281 goto out;
282 }
283
284 ret = blkdev_report_zones(req->ns->bdev, start_sect, req_slba_nr_zones,
285 nvmet_bdev_report_zone_cb, &rz_data);
286 if (ret < 0) {
287 status = NVME_SC_INTERNAL;
288 goto out;
289 }
290
291 /*
292 * When partial bit is set nr_zones must indicate the number of zone
293 * descriptors actually transferred.
294 */
295 if (req->cmd->zmr.pr)
296 rz_data.nr_zones = min(rz_data.nr_zones, rz_data.out_nr_zones);
297
298 nr_zones = cpu_to_le64(rz_data.nr_zones);
299 status = nvmet_copy_to_sgl(req, 0, &nr_zones, sizeof(nr_zones));
300
301 out:
302 nvmet_req_complete(req, status);
303 }
304
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[linux-next:master 9208/10007] fs/io_uring.c:7082:42: sparse: sparse: incompatible types in comparison expression (different type sizes):
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 19ae1f2bd9c091059f80646604ccef8a1e614f57
commit: 9123c8ffce1610323ec9c0874fa0262353f41fc3 [9208/10007] io_uring: add helpers for 2 level table alloc
config: mips-randconfig-s031-20210615 (attached as .config)
compiler: mips-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout 9123c8ffce1610323ec9c0874fa0262353f41fc3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
command-line: note: in included file:
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_ACQUIRE redefined
builtin:0:0: sparse: this was the original definition
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_SEQ_CST redefined
builtin:0:0: sparse: this was the original definition
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_ACQ_REL redefined
builtin:0:0: sparse: this was the original definition
builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_RELEASE redefined
builtin:0:0: sparse: this was the original definition
fs/io_uring.c:2921:24: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void [noderef] __user * @@ got struct io_buffer *[assigned] kbuf @@
fs/io_uring.c:2921:24: sparse: expected void [noderef] __user *
fs/io_uring.c:2921:24: sparse: got struct io_buffer *[assigned] kbuf
fs/io_uring.c:4228:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct file *file @@ got struct file [noderef] __rcu * @@
fs/io_uring.c:4228:14: sparse: expected struct file *file
fs/io_uring.c:4228:14: sparse: got struct file [noderef] __rcu *
fs/io_uring.c:4833:72: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected int mask @@ got restricted __poll_t [usertype] mask @@
fs/io_uring.c:4833:72: sparse: expected int mask
fs/io_uring.c:4833:72: sparse: got restricted __poll_t [usertype] mask
fs/io_uring.c:4837:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] result @@ got restricted __poll_t [usertype] mask @@
fs/io_uring.c:4837:21: sparse: expected unsigned int [usertype] result
fs/io_uring.c:4837:21: sparse: got restricted __poll_t [usertype] mask
fs/io_uring.c:4862:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] result @@ got restricted __poll_t @@
fs/io_uring.c:4862:29: sparse: expected unsigned int [usertype] result
fs/io_uring.c:4862:29: sparse: got restricted __poll_t
fs/io_uring.c:4946:49: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected restricted __poll_t [usertype] mask @@ got unsigned int [usertype] result @@
fs/io_uring.c:4946:49: sparse: expected restricted __poll_t [usertype] mask
fs/io_uring.c:4946:49: sparse: got unsigned int [usertype] result
fs/io_uring.c:5098:41: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected int mask @@ got restricted __poll_t [usertype] @@
fs/io_uring.c:5098:41: sparse: expected int mask
fs/io_uring.c:5098:41: sparse: got restricted __poll_t [usertype]
fs/io_uring.c:5186:22: sparse: sparse: invalid assignment: |=
fs/io_uring.c:5186:22: sparse: left side has type restricted __poll_t
fs/io_uring.c:5186:22: sparse: right side has type int
fs/io_uring.c:5188:22: sparse: sparse: invalid assignment: |=
fs/io_uring.c:5188:22: sparse: left side has type restricted __poll_t
fs/io_uring.c:5188:22: sparse: right side has type int
fs/io_uring.c:5193:22: sparse: sparse: invalid assignment: &=
fs/io_uring.c:5193:22: sparse: left side has type restricted __poll_t
fs/io_uring.c:5193:22: sparse: right side has type int
fs/io_uring.c:5195:14: sparse: sparse: invalid assignment: |=
fs/io_uring.c:5195:14: sparse: left side has type restricted __poll_t
fs/io_uring.c:5195:14: sparse: right side has type int
fs/io_uring.c:5207:67: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected int mask @@ got restricted __poll_t [assigned] [usertype] mask @@
fs/io_uring.c:5207:67: sparse: expected int mask
fs/io_uring.c:5207:67: sparse: got restricted __poll_t [assigned] [usertype] mask
fs/io_uring.c:5208:52: sparse: sparse: incorrect type in argument 5 (different base types) @@ expected int events @@ got restricted __poll_t [usertype] events @@
fs/io_uring.c:5208:52: sparse: expected int events
fs/io_uring.c:5208:52: sparse: got restricted __poll_t [usertype] events
fs/io_uring.c:5334:24: sparse: sparse: invalid assignment: |=
fs/io_uring.c:5334:24: sparse: left side has type unsigned int
fs/io_uring.c:5334:24: sparse: right side has type restricted __poll_t
fs/io_uring.c:5335:65: sparse: sparse: restricted __poll_t degrades to integer
fs/io_uring.c:5335:29: sparse: sparse: restricted __poll_t degrades to integer
fs/io_uring.c:5335:38: sparse: sparse: incorrect type in return expression (different base types) @@ expected restricted __poll_t @@ got unsigned int @@
fs/io_uring.c:5335:38: sparse: expected restricted __poll_t
fs/io_uring.c:5335:38: sparse: got unsigned int
fs/io_uring.c:5472:35: sparse: sparse: invalid assignment: &=
fs/io_uring.c:5472:35: sparse: left side has type restricted __poll_t
fs/io_uring.c:5472:35: sparse: right side has type int
fs/io_uring.c:5473:54: sparse: sparse: restricted __poll_t degrades to integer
fs/io_uring.c:5473:35: sparse: sparse: invalid assignment: |=
fs/io_uring.c:5473:35: sparse: left side has type restricted __poll_t
fs/io_uring.c:5473:35: sparse: right side has type unsigned int
>> fs/io_uring.c:7082:42: sparse: sparse: incompatible types in comparison expression (different type sizes):
>> fs/io_uring.c:7082:42: sparse: unsigned int *
>> fs/io_uring.c:7082:42: sparse: unsigned long *
fs/io_uring.c:7287:9: sparse: sparse: context imbalance in 'io_sq_thread_unpark' - wrong count at exit
fs/io_uring.c:7298:9: sparse: sparse: context imbalance in 'io_sq_thread_park' - wrong count at exit
vim +7082 fs/io_uring.c
7070
7071 static void **io_alloc_page_table(size_t size)
7072 {
7073 unsigned i, nr_tables = DIV_ROUND_UP(size, PAGE_SIZE);
7074 size_t init_size = size;
7075 void **table;
7076
7077 table = kcalloc(nr_tables, sizeof(*table), GFP_KERNEL);
7078 if (!table)
7079 return NULL;
7080
7081 for (i = 0; i < nr_tables; i++) {
> 7082 unsigned int this_size = min(size, PAGE_SIZE);
7083
7084 table[i] = kzalloc(this_size, GFP_KERNEL);
7085 if (!table[i]) {
7086 io_free_page_table(table, init_size);
7087 return NULL;
7088 }
7089 size -= this_size;
7090 }
7091 return table;
7092 }
7093
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months