Re: [RFC][PATCH] netfs, afs, ceph: Use folios
by kernel test robot
Hi David,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on next-20210811]
[cannot apply to tip/perf/core linux/master linus/master v5.14-rc5 v5.14-rc4 v5.14-rc3 v5.14-rc5]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/David-Howells/netfs-afs-ceph-Use...
base: 8ca403f3e7a23c4513046ad8d107adfbe4703362
config: xtensa-randconfig-r026-20210811 (attached as .config)
compiler: xtensa-linux-gcc (GCC) 10.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://github.com/0day-ci/linux/commit/a665390ce411c517db3f70ae59cdaa874...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review David-Howells/netfs-afs-ceph-Use-folios/20210811-210906
git checkout a665390ce411c517db3f70ae59cdaa874cb914ba
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross ARCH=xtensa
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 >>):
fs/netfs/read_helper.c: In function 'netfs_rreq_unlock':
>> fs/netfs/read_helper.c:435:4: error: implicit declaration of function 'flush_dcache_folio'; did you mean 'flush_dcache_page'? [-Werror=implicit-function-declaration]
435 | flush_dcache_folio(folio);
| ^~~~~~~~~~~~~~~~~~
| flush_dcache_page
cc1: some warnings being treated as errors
vim +435 fs/netfs/read_helper.c
368
369 /*
370 * Unlock the folios in a read operation. We need to set PG_fscache on any
371 * folios we're going to write back before we unlock them.
372 */
373 static void netfs_rreq_unlock(struct netfs_read_request *rreq)
374 {
375 struct netfs_read_subrequest *subreq;
376 struct folio *folio;
377 unsigned int iopos, account = 0;
378 pgoff_t start_page = rreq->start / PAGE_SIZE;
379 pgoff_t last_page = ((rreq->start + rreq->len) / PAGE_SIZE) - 1;
380 bool subreq_failed = false;
381
382 XA_STATE(xas, &rreq->mapping->i_pages, start_page);
383
384 if (test_bit(NETFS_RREQ_FAILED, &rreq->flags)) {
385 __clear_bit(NETFS_RREQ_WRITE_TO_CACHE, &rreq->flags);
386 list_for_each_entry(subreq, &rreq->subrequests, rreq_link) {
387 __clear_bit(NETFS_SREQ_WRITE_TO_CACHE, &subreq->flags);
388 }
389 }
390
391 /* Walk through the pagecache and the I/O request lists simultaneously.
392 * We may have a mixture of cached and uncached sections and we only
393 * really want to write out the uncached sections. This is slightly
394 * complicated by the possibility that we might have huge pages with a
395 * mixture inside.
396 */
397 subreq = list_first_entry(&rreq->subrequests,
398 struct netfs_read_subrequest, rreq_link);
399 iopos = 0;
400 subreq_failed = (subreq->error < 0);
401
402 trace_netfs_rreq(rreq, netfs_rreq_trace_unlock);
403
404 rcu_read_lock();
405 xas_for_each(&xas, folio, last_page) {
406 unsigned int pgpos = (folio_index(folio) - start_page) * PAGE_SIZE;
407 unsigned int pgend = pgpos + folio_size(folio);
408 bool pg_failed = false;
409
410 for (;;) {
411 if (!subreq) {
412 pg_failed = true;
413 break;
414 }
415 if (test_bit(NETFS_SREQ_WRITE_TO_CACHE, &subreq->flags))
416 folio_start_fscache(folio);
417 pg_failed |= subreq_failed;
418 if (pgend < iopos + subreq->len)
419 break;
420
421 account += subreq->transferred;
422 iopos += subreq->len;
423 if (!list_is_last(&subreq->rreq_link, &rreq->subrequests)) {
424 subreq = list_next_entry(subreq, rreq_link);
425 subreq_failed = (subreq->error < 0);
426 } else {
427 subreq = NULL;
428 subreq_failed = false;
429 }
430 if (pgend == iopos)
431 break;
432 }
433
434 if (!pg_failed) {
> 435 flush_dcache_folio(folio);
436 folio_mark_uptodate(folio);
437 }
438
439 if (!test_bit(NETFS_RREQ_DONT_UNLOCK_FOLIOS, &rreq->flags)) {
440 if (folio_index(folio) == rreq->no_unlock_folio &&
441 test_bit(NETFS_RREQ_NO_UNLOCK_FOLIO, &rreq->flags))
442 _debug("no unlock");
443 else
444 folio_unlock(folio);
445 }
446 }
447 rcu_read_unlock();
448
449 task_io_account_read(account);
450 if (rreq->netfs_ops->done)
451 rreq->netfs_ops->done(rreq);
452 }
453
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
Re: [PATCH v6 10/14] media: imx: imx8q: implement windsor encoder rpc interface
by kernel test robot
Hi Ming,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on linuxtv-media/master]
[also build test WARNING on robh/for-next v5.14-rc5]
[cannot apply to shawnguo/for-next next-20210811]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Ming-Qian/imx8q-video-decoder-en...
base: git://linuxtv.org/media_tree.git master
config: arm64-allyesconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 10.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://github.com/0day-ci/linux/commit/24cb9d25f8f3e58921074286fe42eedc1...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Ming-Qian/imx8q-video-decoder-encoder-driver/20210811-164741
git checkout 24cb9d25f8f3e58921074286fe42eedc10aa1214
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross ARCH=arm64
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/media/platform/imx/vpu-8q/vpu_imx8q.c:139:5: warning: no previous prototype for 'vpu_imx8q_get_fuse' [-Wmissing-prototypes]
139 | u32 vpu_imx8q_get_fuse(void)
| ^~~~~~~~~~~~~~~~~~
vim +/vpu_imx8q_get_fuse +139 drivers/media/platform/imx/vpu-8q/vpu_imx8q.c
137
138 #ifdef CONFIG_IMX_SCU
> 139 u32 vpu_imx8q_get_fuse(void)
140 {
141 static u32 fuse_got;
142 struct imx_sc_ipc *ipc;
143 struct vpu_sc_msg_misc msg;
144 struct imx_sc_rpc_msg *hdr = &msg.hdr;
145 int ret;
146
147 if (fuse_got)
148 return imx8q_fuse;
149
150 ret = imx_scu_get_handle(&ipc);
151 if (ret) {
152 vpu_err("error: scu get handle fail: %d\n", ret);
153 return 0;
154 }
155
156 hdr->ver = IMX_SC_RPC_VERSION;
157 hdr->svc = IMX_SC_RPC_SVC_MISC;
158 hdr->func = IMX_SC_MISC_FUNC_OTP_FUSE_READ;
159 hdr->size = 2;
160
161 msg.word = VPU_DISABLE_BITS;
162
163 ret = imx_scu_call_rpc(ipc, &msg, true);
164 if (ret)
165 return 0;
166
167 imx8q_fuse = msg.word;
168 fuse_got = 1;
169 vpu_dbg(LVL_INFO, "imx8q fuse = 0x%x\n", imx8q_fuse);
170 return imx8q_fuse;
171 }
172
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
Re: [PATCH v5 1/9] MIPS: Avoid future duplicate elf core header reservation
by kernel test robot
Hi Geert,
I love your patch! Yet something to improve:
[auto build test ERROR on robh/for-next]
[also build test ERROR on arm64/for-next/core arm/for-next linus/master v5.14-rc5 next-20210811]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Geert-Uytterhoeven/Add-generic-s...
base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: mips-randconfig-r022-20210809 (attached as .config)
compiler: mips64-linux-gcc (GCC) 10.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://github.com/0day-ci/linux/commit/e3a0dd2c8001096543634dfedc74e52f8...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Geert-Uytterhoeven/Add-generic-support-for-kdump-DT-properties/20210811-165455
git checkout e3a0dd2c8001096543634dfedc74e52f819bd528
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=mips SHELL=/bin/bash
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/mips/kernel/setup.c: In function 'mips_reserve_vmcore':
>> arch/mips/kernel/setup.c:432:68: error: expected ')' before 'memblock_reserve'
432 | if (!memblock_is_region_reserved(elfcorehdr_addr, elfcorehdr_size)
| ~ ^
| )
433 | memblock_reserve(elfcorehdr_addr, elfcorehdr_size);
| ~~~~~~~~~~~~~~~~
>> arch/mips/kernel/setup.c:435:1: error: expected expression before '}' token
435 | }
| ^
vim +432 arch/mips/kernel/setup.c
408
409 static void __init mips_reserve_vmcore(void)
410 {
411 #ifdef CONFIG_PROC_VMCORE
412 phys_addr_t start, end;
413 u64 i;
414
415 if (!elfcorehdr_size) {
416 for_each_mem_range(i, &start, &end) {
417 if (elfcorehdr_addr >= start && elfcorehdr_addr < end) {
418 /*
419 * Reserve from the elf core header to the end of
420 * the memory segment, that should all be kdump
421 * reserved memory.
422 */
423 elfcorehdr_size = end - elfcorehdr_addr;
424 break;
425 }
426 }
427 }
428
429 pr_info("Reserving %ldKB of memory at %ldKB for kdump\n",
430 (unsigned long)elfcorehdr_size >> 10, (unsigned long)elfcorehdr_addr >> 10);
431
> 432 if (!memblock_is_region_reserved(elfcorehdr_addr, elfcorehdr_size)
433 memblock_reserve(elfcorehdr_addr, elfcorehdr_size);
434 #endif
> 435 }
436
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
Re: [PATCH v6 04/14] media: imx: imx8q: add imx8q vpu device driver
by kernel test robot
Hi Ming,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on robh/for-next v5.14-rc5]
[cannot apply to shawnguo/for-next next-20210811]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Ming-Qian/imx8q-video-decoder-en...
base: git://linuxtv.org/media_tree.git master
config: i386-randconfig-m021-20210810 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/2fa6f8ecd73870259a9a985a8b214d5eb...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Ming-Qian/imx8q-video-decoder-encoder-driver/20210811-164741
git checkout 2fa6f8ecd73870259a9a985a8b214d5eb58a5314
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
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 >>):
In file included from ./usr/include/linux/imx_vpu.h:9,
from <command-line>:32:
>> ./usr/include/linux/videodev2.h:2403:20: error: field 'timestamp' has incomplete type
2403 | struct timespec timestamp;
| ^~~~~~~~~
In file included from <command-line>:32:
>> ./usr/include/linux/imx_vpu.h:12:1: error: C++ style comments are not allowed in ISO C90
12 | //error happened in dec/enc
| ^
./usr/include/linux/imx_vpu.h:12:1: note: (this will be reported only once per input file)
>> ./usr/include/linux/imx_vpu.h:17:8: warning: extra tokens at end of #endif directive [-Wendif-labels]
17 | #endif //#ifndef __LINUX_IMX_VPU_H
| ^
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
[xlnx:xlnx_rebase_v5.10 1403/1760] include/linux/mtd/cfi.h:62:2: warning: No CONFIG_MTD_CFI_Ix selected. No NOR chip support can work.
by kernel test robot
Hi Amit,
FYI, the error/warning still remains.
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.10
head: bf98c1493fb23bfd7e2678498b7e337ce2cd1d53
commit: 0ee2a65f834c5d35ad3ce580c4772d9cf7da2937 [1403/1760] spi: spi-zynq-qspi: Add dual parallal and stacked support
config: riscv-randconfig-r042-20210810 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d39ebdae674c8efc84ebe8dc32716ec353220530)
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://github.com/Xilinx/linux-xlnx/commit/0ee2a65f834c5d35ad3ce580c4772...
git remote add xlnx https://github.com/Xilinx/linux-xlnx
git fetch --no-tags xlnx xlnx_rebase_v5.10
git checkout 0ee2a65f834c5d35ad3ce580c4772d9cf7da2937
# 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 >>):
In file included from drivers/spi/spi-mem.c:10:
In file included from include/linux/mtd/spi-nor.h:10:
>> include/linux/mtd/cfi.h:62:2: warning: No CONFIG_MTD_CFI_Ix selected. No NOR chip support can work. [-W#warnings]
#warning No CONFIG_MTD_CFI_Ix selected. No NOR chip support can work.
^
1 warning generated.
vim +62 include/linux/mtd/cfi.h
^1da177e4c3f41 Linus Torvalds 2005-04-16 60
241651d04d672f David Woodhouse 2007-09-06 61 #ifndef cfi_interleave
241651d04d672f David Woodhouse 2007-09-06 @62 #warning No CONFIG_MTD_CFI_Ix selected. No NOR chip support can work.
241651d04d672f David Woodhouse 2007-09-06 63 static inline int cfi_interleave(void *cfi)
241651d04d672f David Woodhouse 2007-09-06 64 {
241651d04d672f David Woodhouse 2007-09-06 65 BUG();
241651d04d672f David Woodhouse 2007-09-06 66 return 0;
241651d04d672f David Woodhouse 2007-09-06 67 }
241651d04d672f David Woodhouse 2007-09-06 68 #endif
241651d04d672f David Woodhouse 2007-09-06 69
:::::: The code at line 62 was first introduced by commit
:::::: 241651d04d672fb685b2874707016cbbf95931e5 [MTD] Fix CFI build error when no map width or interleave supported
:::::: TO: David Woodhouse <dwmw2(a)infradead.org>
:::::: CC: David Woodhouse <dwmw2(a)infradead.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
Re: [RFC PATCH] clocksource: skip check while watchdog hung up or unstable
by kernel test robot
Hi brookxu,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on tip/timers/core]
[also build test WARNING on v5.14-rc5 next-20210811]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/brookxu/clocksource-skip-check-w...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 1e7f7fbcd40c69d23e3fe641ead9f3dc128fa8aa
config: x86_64-randconfig-c001-20210810 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d39ebdae674c8efc84ebe8dc32716ec353220530)
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://github.com/0day-ci/linux/commit/085c7bc9e8da6deabad14b2093bd8409c...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review brookxu/clocksource-skip-check-while-watchdog-hung-up-or-unstable/20210811-175707
git checkout 085c7bc9e8da6deabad14b2093bd8409cb77b3be
# 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 >>):
>> kernel/time/clocksource.c:403:41: warning: more '%' conversions than data arguments [-Wformat-insufficient-args]
pr_warn("timekeeping watchdog on CPU%d seems hung up or unstable:");
~^
include/linux/printk.h:400:29: note: expanded from macro 'pr_warn'
printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
^~~
kernel/time/clocksource.c:8:41: note: expanded from macro 'pr_fmt'
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
^~~
1 warning generated.
vim +403 kernel/time/clocksource.c
352
353 static void clocksource_watchdog(struct timer_list *unused)
354 {
355 u64 csnow, wdnow, cslast, wdlast, delta;
356 int next_cpu, reset_pending;
357 int64_t wd_nsec, cs_nsec;
358 struct clocksource *cs;
359 u32 md;
360
361 spin_lock(&watchdog_lock);
362 if (!watchdog_running)
363 goto out;
364
365 reset_pending = atomic_read(&watchdog_reset_pending);
366
367 list_for_each_entry(cs, &watchdog_list, wd_list) {
368
369 /* Clocksource already marked unstable? */
370 if (cs->flags & CLOCK_SOURCE_UNSTABLE) {
371 if (finished_booting)
372 schedule_work(&watchdog_work);
373 continue;
374 }
375
376 if (!cs_watchdog_read(cs, &csnow, &wdnow)) {
377 /* Clock readout unreliable, so give it up. */
378 __clocksource_unstable(cs);
379 continue;
380 }
381
382 /* Clocksource initialized ? */
383 if (!(cs->flags & CLOCK_SOURCE_WATCHDOG) ||
384 atomic_read(&watchdog_reset_pending)) {
385 cs->flags |= CLOCK_SOURCE_WATCHDOG;
386 cs->wd_last = wdnow;
387 cs->cs_last = csnow;
388 continue;
389 }
390
391 delta = clocksource_delta(wdnow, cs->wd_last, watchdog->mask);
392 wd_nsec = clocksource_cyc2ns(delta, watchdog->mult,
393 watchdog->shift);
394
395 delta = clocksource_delta(csnow, cs->cs_last, cs->mask);
396 cs_nsec = clocksource_cyc2ns(delta, cs->mult, cs->shift);
397 wdlast = cs->wd_last; /* save these in case we print them */
398 cslast = cs->cs_last;
399 cs->cs_last = csnow;
400 cs->wd_last = wdnow;
401
402 if (!wd_nsec) {
> 403 pr_warn("timekeeping watchdog on CPU%d seems hung up or unstable:");
404 pr_warn("'%s' wd_now: %llx wd_last: %llx mask: %llx\n",
405 watchdog->name, wdnow, wdlast, watchdog->mask);
406 continue;
407 }
408
409 if (atomic_read(&watchdog_reset_pending))
410 continue;
411
412 /* Check the deviation from the watchdog clocksource. */
413 md = cs->uncertainty_margin + watchdog->uncertainty_margin;
414 if (abs(cs_nsec - wd_nsec) > md) {
415 pr_warn("timekeeping watchdog on CPU%d: Marking clocksource '%s' as unstable because the skew is too large:\n",
416 smp_processor_id(), cs->name);
417 pr_warn(" '%s' wd_nsec: %lld wd_now: %llx wd_last: %llx mask: %llx\n",
418 watchdog->name, wd_nsec, wdnow, wdlast, watchdog->mask);
419 pr_warn(" '%s' cs_nsec: %lld cs_now: %llx cs_last: %llx mask: %llx\n",
420 cs->name, cs_nsec, csnow, cslast, cs->mask);
421 if (curr_clocksource == cs)
422 pr_warn(" '%s' is current clocksource.\n", cs->name);
423 else if (curr_clocksource)
424 pr_warn(" '%s' (not '%s') is current clocksource.\n", curr_clocksource->name, cs->name);
425 else
426 pr_warn(" No current clocksource.\n");
427 __clocksource_unstable(cs);
428 continue;
429 }
430
431 if (cs == curr_clocksource && cs->tick_stable)
432 cs->tick_stable(cs);
433
434 if (!(cs->flags & CLOCK_SOURCE_VALID_FOR_HRES) &&
435 (cs->flags & CLOCK_SOURCE_IS_CONTINUOUS) &&
436 (watchdog->flags & CLOCK_SOURCE_IS_CONTINUOUS)) {
437 /* Mark it valid for high-res. */
438 cs->flags |= CLOCK_SOURCE_VALID_FOR_HRES;
439
440 /*
441 * clocksource_done_booting() will sort it if
442 * finished_booting is not set yet.
443 */
444 if (!finished_booting)
445 continue;
446
447 /*
448 * If this is not the current clocksource let
449 * the watchdog thread reselect it. Due to the
450 * change to high res this clocksource might
451 * be preferred now. If it is the current
452 * clocksource let the tick code know about
453 * that change.
454 */
455 if (cs != curr_clocksource) {
456 cs->flags |= CLOCK_SOURCE_RESELECT;
457 schedule_work(&watchdog_work);
458 } else {
459 tick_clock_notify();
460 }
461 }
462 }
463
464 /*
465 * We only clear the watchdog_reset_pending, when we did a
466 * full cycle through all clocksources.
467 */
468 if (reset_pending)
469 atomic_dec(&watchdog_reset_pending);
470
471 /*
472 * Cycle through CPUs to check if the CPUs stay synchronized
473 * to each other.
474 */
475 next_cpu = cpumask_next(raw_smp_processor_id(), cpu_online_mask);
476 if (next_cpu >= nr_cpu_ids)
477 next_cpu = cpumask_first(cpu_online_mask);
478
479 /*
480 * Arm timer if not already pending: could race with concurrent
481 * pair clocksource_stop_watchdog() clocksource_start_watchdog().
482 */
483 if (!timer_pending(&watchdog_timer)) {
484 watchdog_timer.expires += WATCHDOG_INTERVAL;
485 add_timer_on(&watchdog_timer, next_cpu);
486 }
487 out:
488 spin_unlock(&watchdog_lock);
489 }
490
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
Re: [PATCH] KVM: stats: Add VM dirty_pages stats for the number of dirty pages
by kernel test robot
Hi Jing,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on d0732b0f8884d9cc0eca0082bbaef043f3fef7fb]
url: https://github.com/0day-ci/linux/commits/Jing-Zhang/KVM-stats-Add-VM-dirt...
base: d0732b0f8884d9cc0eca0082bbaef043f3fef7fb
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc-linux-gcc (GCC) 10.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://github.com/0day-ci/linux/commit/85679ee0cff16eaae940baba21e08ad6e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jing-Zhang/KVM-stats-Add-VM-dirty_pages-stats-for-the-number-of-dirty-pages/20210811-063544
git checkout 85679ee0cff16eaae940baba21e08ad6e9944698
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=powerpc SHELL=/bin/bash
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/powerpc/kvm/book3s_hv_rm_mmu.c: In function 'kvmppc_update_dirty_map':
>> arch/powerpc/kvm/book3s_hv_rm_mmu.c:112:2: error: 'kvm' undeclared (first use in this function)
112 | kvm->stat.generic.dirty_pages += npages;
| ^~~
arch/powerpc/kvm/book3s_hv_rm_mmu.c:112:2: note: each undeclared identifier is reported only once for each function it appears in
vim +/kvm +112 arch/powerpc/kvm/book3s_hv_rm_mmu.c
100
101 /* Update the dirty bitmap of a memslot */
102 void kvmppc_update_dirty_map(const struct kvm_memory_slot *memslot,
103 unsigned long gfn, unsigned long psize)
104 {
105 unsigned long npages;
106
107 if (!psize || !memslot->dirty_bitmap)
108 return;
109 npages = (psize + PAGE_SIZE - 1) / PAGE_SIZE;
110 gfn -= memslot->base_gfn;
111 set_dirty_bits_atomic(memslot->dirty_bitmap, gfn, npages);
> 112 kvm->stat.generic.dirty_pages += npages;
113 }
114 EXPORT_SYMBOL_GPL(kvmppc_update_dirty_map);
115
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
[linux-rt-devel:linux-5.14.y-rt-rebase 53/239] mm/slub.c:4396:5: warning: no previous prototype for '__kmem_cache_do_shrink'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-5.14.y-rt-rebase
head: 1dd417d8628a02944d12964253beb7ab2773c93e
commit: e7d6f3b2ba81e813e19e32c7fbdd2f14b56f29f8 [53/239] mm: slub: Move flush_cpu_slab() invocations __free_slab() invocations out of IRQ context
config: arm-randconfig-r024-20210809 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 10.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/rt/linux-rt-devel.git/com...
git remote add linux-rt-devel https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
git fetch --no-tags linux-rt-devel linux-5.14.y-rt-rebase
git checkout e7d6f3b2ba81e813e19e32c7fbdd2f14b56f29f8
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross ARCH=arm
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 >>):
>> mm/slub.c:4396:5: warning: no previous prototype for '__kmem_cache_do_shrink' [-Wmissing-prototypes]
4396 | int __kmem_cache_do_shrink(struct kmem_cache *s)
| ^~~~~~~~~~~~~~~~~~~~~~
vim +/__kmem_cache_do_shrink +4396 mm/slub.c
4386
4387 /*
4388 * kmem_cache_shrink discards empty slabs and promotes the slabs filled
4389 * up most to the head of the partial lists. New allocations will then
4390 * fill those up and thus they can be removed from the partial lists.
4391 *
4392 * The slabs with the least items are placed last. This results in them
4393 * being allocated from last increasing the chance that the last objects
4394 * are freed in them.
4395 */
> 4396 int __kmem_cache_do_shrink(struct kmem_cache *s)
4397 {
4398 int node;
4399 int i;
4400 struct kmem_cache_node *n;
4401 struct page *page;
4402 struct page *t;
4403 struct list_head discard;
4404 struct list_head promote[SHRINK_PROMOTE_MAX];
4405 unsigned long flags;
4406 int ret = 0;
4407
4408 for_each_kmem_cache_node(s, node, n) {
4409 INIT_LIST_HEAD(&discard);
4410 for (i = 0; i < SHRINK_PROMOTE_MAX; i++)
4411 INIT_LIST_HEAD(promote + i);
4412
4413 spin_lock_irqsave(&n->list_lock, flags);
4414
4415 /*
4416 * Build lists of slabs to discard or promote.
4417 *
4418 * Note that concurrent frees may occur while we hold the
4419 * list_lock. page->inuse here is the upper limit.
4420 */
4421 list_for_each_entry_safe(page, t, &n->partial, slab_list) {
4422 int free = page->objects - page->inuse;
4423
4424 /* Do not reread page->inuse */
4425 barrier();
4426
4427 /* We do not keep full slabs on the list */
4428 BUG_ON(free <= 0);
4429
4430 if (free == page->objects) {
4431 list_move(&page->slab_list, &discard);
4432 n->nr_partial--;
4433 } else if (free <= SHRINK_PROMOTE_MAX)
4434 list_move(&page->slab_list, promote + free - 1);
4435 }
4436
4437 /*
4438 * Promote the slabs filled up most to the head of the
4439 * partial list.
4440 */
4441 for (i = SHRINK_PROMOTE_MAX - 1; i >= 0; i--)
4442 list_splice(promote + i, &n->partial);
4443
4444 spin_unlock_irqrestore(&n->list_lock, flags);
4445
4446 /* Release empty slabs */
4447 list_for_each_entry_safe(page, t, &discard, slab_list)
4448 discard_slab(s, page);
4449
4450 if (slabs_node(s, node))
4451 ret = 1;
4452 }
4453
4454 return ret;
4455 }
4456
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month
drivers/pci/controller/pci-ixp4xx.c:38: warning: "IXP4XX_PCI_CSR" redefined
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 761c6d7ec820f123b931e7b8ef7ec7c8564e450f
commit: 5f291bfd33c8995c69f5a50f21445a4a93584ed2 arm: Typo s/PCI_IXP4XX_LEGACY/IXP4XX_PCI_LEGACY/
date: 4 weeks ago
config: arm-randconfig-r032-20210811 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 10.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/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 5f291bfd33c8995c69f5a50f21445a4a93584ed2
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=arm SHELL=/bin/bash drivers/pci/controller/
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/pci/controller/pci-ixp4xx.c:38: warning: "IXP4XX_PCI_CSR" redefined
38 | #define IXP4XX_PCI_CSR 0x1c
|
In file included from arch/arm/mach-ixp4xx/include/mach/hardware.h:23,
from arch/arm/mach-ixp4xx/include/mach/io.h:15,
from arch/arm/include/asm/io.h:198,
from include/linux/io.h:13,
from drivers/pci/controller/pci-ixp4xx.c:20:
arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h:221: note: this is the location of the previous definition
221 | #define IXP4XX_PCI_CSR(x) ((volatile u32 *)(IXP4XX_PCI_CFG_BASE_VIRT+(x)))
|
drivers/pci/controller/pci-ixp4xx.c:148:12: error: 'ixp4xx_pci_read' redeclared as different kind of symbol
148 | static int ixp4xx_pci_read(struct ixp4xx_pci *p, u32 addr, u32 cmd, u32 *data)
| ^~~~~~~~~~~~~~~
In file included from arch/arm/include/asm/io.h:198,
from include/linux/io.h:13,
from drivers/pci/controller/pci-ixp4xx.c:20:
arch/arm/mach-ixp4xx/include/mach/io.h:17:14: note: previous declaration of 'ixp4xx_pci_read' was here
17 | extern int (*ixp4xx_pci_read)(u32 addr, u32 cmd, u32* data);
| ^~~~~~~~~~~~~~~
drivers/pci/controller/pci-ixp4xx.c:173:12: error: conflicting types for 'ixp4xx_pci_write'
173 | static int ixp4xx_pci_write(struct ixp4xx_pci *p, u32 addr, u32 cmd, u32 data)
| ^~~~~~~~~~~~~~~~
In file included from arch/arm/include/asm/io.h:198,
from include/linux/io.h:13,
from drivers/pci/controller/pci-ixp4xx.c:20:
arch/arm/mach-ixp4xx/include/mach/io.h:18:12: note: previous declaration of 'ixp4xx_pci_write' was here
18 | extern int ixp4xx_pci_write(u32 addr, u32 cmd, u32 data);
| ^~~~~~~~~~~~~~~~
vim +/IXP4XX_PCI_CSR +38 drivers/pci/controller/pci-ixp4xx.c
f7821b49345848 Linus Walleij 2021-05-03 29
f7821b49345848 Linus Walleij 2021-05-03 30 /* Register offsets */
f7821b49345848 Linus Walleij 2021-05-03 31 #define IXP4XX_PCI_NP_AD 0x00
f7821b49345848 Linus Walleij 2021-05-03 32 #define IXP4XX_PCI_NP_CBE 0x04
f7821b49345848 Linus Walleij 2021-05-03 33 #define IXP4XX_PCI_NP_WDATA 0x08
f7821b49345848 Linus Walleij 2021-05-03 34 #define IXP4XX_PCI_NP_RDATA 0x0c
f7821b49345848 Linus Walleij 2021-05-03 35 #define IXP4XX_PCI_CRP_AD_CBE 0x10
f7821b49345848 Linus Walleij 2021-05-03 36 #define IXP4XX_PCI_CRP_WDATA 0x14
f7821b49345848 Linus Walleij 2021-05-03 37 #define IXP4XX_PCI_CRP_RDATA 0x18
f7821b49345848 Linus Walleij 2021-05-03 @38 #define IXP4XX_PCI_CSR 0x1c
f7821b49345848 Linus Walleij 2021-05-03 39 #define IXP4XX_PCI_ISR 0x20
f7821b49345848 Linus Walleij 2021-05-03 40 #define IXP4XX_PCI_INTEN 0x24
f7821b49345848 Linus Walleij 2021-05-03 41 #define IXP4XX_PCI_DMACTRL 0x28
f7821b49345848 Linus Walleij 2021-05-03 42 #define IXP4XX_PCI_AHBMEMBASE 0x2c
f7821b49345848 Linus Walleij 2021-05-03 43 #define IXP4XX_PCI_AHBIOBASE 0x30
f7821b49345848 Linus Walleij 2021-05-03 44 #define IXP4XX_PCI_PCIMEMBASE 0x34
f7821b49345848 Linus Walleij 2021-05-03 45 #define IXP4XX_PCI_AHBDOORBELL 0x38
f7821b49345848 Linus Walleij 2021-05-03 46 #define IXP4XX_PCI_PCIDOORBELL 0x3c
f7821b49345848 Linus Walleij 2021-05-03 47 #define IXP4XX_PCI_ATPDMA0_AHBADDR 0x40
f7821b49345848 Linus Walleij 2021-05-03 48 #define IXP4XX_PCI_ATPDMA0_PCIADDR 0x44
f7821b49345848 Linus Walleij 2021-05-03 49 #define IXP4XX_PCI_ATPDMA0_LENADDR 0x48
f7821b49345848 Linus Walleij 2021-05-03 50 #define IXP4XX_PCI_ATPDMA1_AHBADDR 0x4c
f7821b49345848 Linus Walleij 2021-05-03 51 #define IXP4XX_PCI_ATPDMA1_PCIADDR 0x50
f7821b49345848 Linus Walleij 2021-05-03 52 #define IXP4XX_PCI_ATPDMA1_LENADDR 0x54
f7821b49345848 Linus Walleij 2021-05-03 53
:::::: The code at line 38 was first introduced by commit
:::::: f7821b49345848246692c6e0aa170c8bc6723f86 PCI: ixp4xx: Add a new driver for IXP4xx
:::::: TO: Linus Walleij <linus.walleij(a)linaro.org>
:::::: CC: Linus Walleij <linus.walleij(a)linaro.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 1 month