mailweb.openeuler.org
Manage this list

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

Kernel

Threads by month
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
kernel@openeuler.org

  • 21523 discussions
[openeuler:openEuler-1.0-LTS 1740/1740] mm/mem_reliable.c:401:5: sparse: sparse: symbol 'reliable_pagecache_max_bytes_write' was not declared. Should it be static?
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 6c5657aecca1857be6ea39f789159c9acfde2f9e commit: 6943b93b464351cbc35aa002e86bac48e08b1c3f [1740/1740] mm: add support for limiting the usage of reliable memory in pagecache config: arm64-randconfig-r121-20250729 (https://download.01.org/0day-ci/archive/20251123/202511231539.RJG0KnzF-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511231539.RJG0KnzF-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511231539.RJG0KnzF-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) mm/mem_reliable.c:39:1: sparse: sparse: symbol 'pagecache_reliable_pages' was not declared. Should it be static? mm/mem_reliable.c:67:14: sparse: sparse: restricted gfp_t degrades to integer mm/mem_reliable.c:250:5: sparse: sparse: symbol 'reliable_limit_handler' was not declared. Should it be static? mm/mem_reliable.c:323:5: sparse: sparse: symbol 'reliable_debug_handler' was not declared. Should it be static? mm/mem_reliable.c:356:5: sparse: sparse: symbol 'reliable_reserve_size_handler' was not declared. Should it be static? >> mm/mem_reliable.c:401:5: sparse: sparse: symbol 'reliable_pagecache_max_bytes_write' was not declared. Should it be static? >> mm/mem_reliable.c:487:14: sparse: sparse: invalid assignment: |= mm/mem_reliable.c:487:14: sparse: left side has type restricted gfp_t mm/mem_reliable.c:487:14: sparse: right side has type unsigned int mm/mem_reliable.c:491:14: sparse: sparse: invalid assignment: &= mm/mem_reliable.c:491:14: sparse: left side has type restricted gfp_t mm/mem_reliable.c:491:14: sparse: right side has type unsigned int mm/mem_reliable.c:250:5: warning: no previous prototype for 'reliable_limit_handler' [-Wmissing-prototypes] 250 | int reliable_limit_handler(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~ mm/mem_reliable.c:323:5: warning: no previous prototype for 'reliable_debug_handler' [-Wmissing-prototypes] 323 | int reliable_debug_handler(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~ mm/mem_reliable.c:356:5: warning: no previous prototype for 'reliable_reserve_size_handler' [-Wmissing-prototypes] 356 | int reliable_reserve_size_handler(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mm/mem_reliable.c:401:5: warning: no previous prototype for 'reliable_pagecache_max_bytes_write' [-Wmissing-prototypes] 401 | int reliable_pagecache_max_bytes_write(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/reliable_pagecache_max_bytes_write +401 mm/mem_reliable.c 400 > 401 int reliable_pagecache_max_bytes_write(struct ctl_table *table, int write, 402 void __user *buffer, size_t *length, loff_t *ppos) 403 { 404 unsigned long old_value = reliable_pagecache_max_bytes; 405 int ret; 406 407 ret = proc_doulongvec_minmax(table, write, buffer, length, ppos); 408 if (!ret && write) { 409 if (reliable_pagecache_max_bytes > total_reliable_mem_sz()) { 410 reliable_pagecache_max_bytes = old_value; 411 return -EINVAL; 412 } 413 } 414 415 return ret; 416 } 417 418 static struct ctl_table reliable_ctl_table[] = { 419 { 420 .procname = "task_reliable_limit", 421 .data = &task_reliable_limit, 422 .maxlen = sizeof(task_reliable_limit), 423 .mode = 0644, 424 .proc_handler = reliable_limit_handler, 425 }, 426 { 427 .procname = "reliable_debug", 428 .data = &mem_reliable_ctrl_bits, 429 .maxlen = sizeof(mem_reliable_ctrl_bits), 430 .mode = 0600, 431 .proc_handler = reliable_debug_handler, 432 }, 433 { 434 .procname = "reliable_reserve_size", 435 .data = &sysctl_reliable_reserve_size, 436 .maxlen = sizeof(sysctl_reliable_reserve_size), 437 .mode = 0644, 438 .proc_handler = reliable_reserve_size_handler, 439 }, 440 #ifdef CONFIG_SHMEM 441 { 442 .procname = "shmem_reliable_bytes_limit", 443 .data = &sysctl_shmem_reliable_bytes_limit, 444 .maxlen = sizeof(sysctl_shmem_reliable_bytes_limit), 445 .mode = 0644, 446 .proc_handler = reliable_shmem_bytes_limit_handler, 447 }, 448 #endif 449 { 450 .procname = "reliable_pagecache_max_bytes", 451 .data = &reliable_pagecache_max_bytes, 452 .maxlen = sizeof(reliable_pagecache_max_bytes), 453 .mode = 0644, 454 .proc_handler = reliable_pagecache_max_bytes_write, 455 .extra1 = &zero, 456 }, 457 {} 458 }; 459 460 static struct ctl_table reliable_dir_table[] = { 461 { 462 .procname = "vm", 463 .maxlen = 0, 464 .mode = 0555, 465 .child = reliable_ctl_table, 466 }, 467 {} 468 }; 469 470 void page_cache_prepare_alloc(gfp_t *gfp) 471 { 472 long nr_reliable = 0; 473 int cpu; 474 475 if (!mem_reliable_is_enabled()) 476 return; 477 478 for_each_possible_cpu(cpu) 479 nr_reliable += this_cpu_read(pagecache_reliable_pages); 480 481 if (nr_reliable < 0) 482 goto no_reliable; 483 484 if (nr_reliable > reliable_pagecache_max_bytes >> PAGE_SHIFT) 485 goto no_reliable; 486 > 487 *gfp |= ___GFP_RELIABILITY; 488 return; 489 490 no_reliable: 491 *gfp &= ~___GFP_RELIABILITY; 492 } 493 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10] BUILD REGRESSION 40e02117ca786975378e324ac2e14cc00b00206e
by kernel test robot 23 Nov '25

23 Nov '25
tree/branch: https://gitee.com/openeuler/kernel.git OLK-5.10 branch HEAD: 40e02117ca786975378e324ac2e14cc00b00206e !18720 [Hygon][5.10][EDAC] The width of hash value is 2 bits for Hygon family 18h model 6h processors Error/Warning (recently discovered and may have been fixed): https://lore.kernel.org/oe-kbuild-all/202510300412.XOY1Sf5f-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202511102332.qUTQH99w-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202511230145.Q8A14oTe-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202511231439.ABUnWfea-lkp@intel.com arch/x86/events/intel/core.c:6874:7: warning: variable 'name' is used uninitialized whenever switch case is taken [-Wsometimes-uninitialized] crypto/af_alg.c:742: warning: Function parameter or member 'min' not described in 'af_alg_wait_for_data' drivers/misc/zcopy/zcopy.c:259:5: warning: no previous prototype for 'attach_huge_pmd' [-Wmissing-prototypes] include/linux/compiler_attributes.h:221:41: warning: statement will never be executed [-Wswitch-unreachable] kernel/sched/fair.c:10193:50: error: invalid use of undefined type 'struct task_group' Unverified Error/Warning (likely false positive, kindly check if interested): arch/x86/events/intel/core.o: warning: objtool: intel_pmu_init() falls through to next function intel_arch_events_quirk() arch/x86/kernel/tsc.o: warning: objtool: pit_hpet_ptimer_calibrate_cpu() falls through to next function asan.module_ctor() arch/x86/kernel/tsc.o: warning: objtool: tsc_refine_calibration_work() falls through to next function tsc_read_refs() fs/f2fs/segment.o: warning: objtool: init_min_max_mtime() falls through to next function f2fs_destroy_segment_manager() kernel/sched/psi.o: warning: objtool: collect_percpu_times() falls through to next function update_averages() mm/vmscan.o: warning: objtool: do_shrink_slab() falls through to next function allow_direct_reclaim() sound/core/seq/seq_queue.o: warning: objtool: snd_seq_info_queues_read() falls through to next function asan.module_ctor() Error/Warning ids grouped by kconfigs: recent_errors |-- arm64-allnoconfig | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- arm64-defconfig | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- arm64-randconfig-002-20251123 | |-- drivers-misc-zcopy-zcopy.c:warning:no-previous-prototype-for-attach_huge_pmd | |-- kernel-sched-fair.c:error:invalid-use-of-undefined-type-struct-task_group | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-allnoconfig | `-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken |-- x86_64-allnoconfig-bpf | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-buildonly-randconfig-002-20250806 | `-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data |-- x86_64-defconfig | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-001-20251123 | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-002-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | |-- arch-x86-events-intel-core.o:warning:objtool:intel_pmu_init-falls-through-to-next-function-intel_arch_events_quirk() | |-- arch-x86-kernel-tsc.o:warning:objtool:pit_hpet_ptimer_calibrate_cpu-falls-through-to-next-function-asanmodule_ctor() | `-- arch-x86-kernel-tsc.o:warning:objtool:tsc_refine_calibration_work-falls-through-to-next-function-tsc_read_refs() |-- x86_64-randconfig-003-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | |-- arch-x86-kernel-tsc.o:warning:objtool:pit_hpet_ptimer_calibrate_cpu-falls-through-to-next-function-asanmodule_ctor() | |-- arch-x86-kernel-tsc.o:warning:objtool:tsc_refine_calibration_work-falls-through-to-next-function-tsc_read_refs() | `-- kernel-sched-psi.o:warning:objtool:collect_percpu_times-falls-through-to-next-function-update_averages() |-- x86_64-randconfig-004-20251123 | `-- mm-vmscan.o:warning:objtool:do_shrink_slab-falls-through-to-next-function-allow_direct_reclaim() |-- x86_64-randconfig-005-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | `-- arch-x86-events-intel-core.o:warning:objtool:intel_pmu_init-falls-through-to-next-function-intel_arch_events_quirk() |-- x86_64-randconfig-006-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | |-- arch-x86-kernel-tsc.o:warning:objtool:pit_hpet_ptimer_calibrate_cpu-falls-through-to-next-function-asanmodule_ctor() | |-- arch-x86-kernel-tsc.o:warning:objtool:tsc_refine_calibration_work-falls-through-to-next-function-tsc_read_refs() | `-- fs-f2fs-segment.o:warning:objtool:init_min_max_mtime-falls-through-to-next-function-f2fs_destroy_segment_manager() |-- x86_64-randconfig-012-20251123 | |-- mm-compaction.c:warning:HPAGE_FRAG_CHECK_INTERVAL_MSEC-defined-but-not-used | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-014-20251123 | |-- include-linux-compiler_attributes.h:warning:statement-will-never-be-executed | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-015-20251123 | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-016-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | `-- fs-f2fs-segment.o:warning:objtool:init_min_max_mtime-falls-through-to-next-function-f2fs_destroy_segment_manager() |-- x86_64-randconfig-071-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | |-- arch-x86-events-intel-core.o:warning:objtool:intel_pmu_init-falls-through-to-next-function-intel_arch_events_quirk() | `-- mm-vmscan.o:warning:objtool:do_shrink_slab-falls-through-to-next-function-allow_direct_reclaim() |-- x86_64-randconfig-072-20251123 | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-073-20251123 | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-074-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | |-- arch-x86-kernel-tsc.o:warning:objtool:pit_hpet_ptimer_calibrate_cpu-falls-through-to-next-function-asanmodule_ctor() | |-- arch-x86-kernel-tsc.o:warning:objtool:tsc_refine_calibration_work-falls-through-to-next-function-tsc_read_refs() | `-- fs-f2fs-segment.o:warning:objtool:init_min_max_mtime-falls-through-to-next-function-f2fs_destroy_segment_manager() |-- x86_64-randconfig-075-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | |-- arch-x86-kernel-tsc.o:warning:objtool:pit_hpet_ptimer_calibrate_cpu-falls-through-to-next-function-asanmodule_ctor() | |-- arch-x86-kernel-tsc.o:warning:objtool:tsc_refine_calibration_work-falls-through-to-next-function-tsc_read_refs() | |-- fs-f2fs-segment.o:warning:objtool:init_min_max_mtime-falls-through-to-next-function-f2fs_destroy_segment_manager() | `-- mm-vmscan.o:warning:objtool:do_shrink_slab-falls-through-to-next-function-allow_direct_reclaim() |-- x86_64-randconfig-076-20251123 | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init |-- x86_64-randconfig-121-20251123 | |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken | `-- fs-f2fs-segment.o:warning:objtool:init_min_max_mtime-falls-through-to-next-function-f2fs_destroy_segment_manager() |-- x86_64-randconfig-122-20251123 | `-- mm-vmscan.o:warning:objtool:do_shrink_slab-falls-through-to-next-function-allow_direct_reclaim() |-- x86_64-randconfig-123-20251123 | |-- mm-damon-core-test.h:sparse:sparse:incompatible-types-in-comparison-expression-(different-signedness): | `-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init `-- x86_64-randconfig-161-20251123 |-- arch-x86-events-intel-core.c:warning:variable-name-is-used-uninitialized-whenever-switch-case-is-taken |-- fs-f2fs-segment.o:warning:objtool:init_min_max_mtime-falls-through-to-next-function-f2fs_destroy_segment_manager() `-- sound-core-seq-seq_queue.o:warning:objtool:snd_seq_info_queues_read-falls-through-to-next-function-asanmodule_ctor() elapsed time: 1501m configs tested: 26 configs skipped: 105 tested configs: arm64 allnoconfig gcc-15.1.0 arm64 defconfig gcc-15.1.0 arm64 randconfig-001-20251123 gcc-5.5.0 arm64 randconfig-002-20251123 gcc-11.5.0 arm64 randconfig-003-20251123 clang-22 arm64 randconfig-004-20251123 clang-22 x86_64 allnoconfig clang-22 x86_64 defconfig gcc-14 x86_64 randconfig-001-20251123 gcc-14 x86_64 randconfig-002-20251123 clang-22 x86_64 randconfig-003-20251123 clang-22 x86_64 randconfig-004-20251123 clang-22 x86_64 randconfig-005-20251123 clang-22 x86_64 randconfig-006-20251123 clang-22 x86_64 randconfig-011-20251123 gcc-14 x86_64 randconfig-012-20251123 gcc-14 x86_64 randconfig-013-20251123 clang-22 x86_64 randconfig-014-20251123 gcc-14 x86_64 randconfig-015-20251123 gcc-14 x86_64 randconfig-016-20251123 clang-22 x86_64 randconfig-071-20251123 clang-22 x86_64 randconfig-072-20251123 gcc-14 x86_64 randconfig-073-20251123 gcc-12 x86_64 randconfig-074-20251123 clang-22 x86_64 randconfig-075-20251123 clang-22 x86_64 randconfig-076-20251123 gcc-12 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 3301/3301] mm/damon/core-test.h:284:9: sparse: sparse: incompatible types in comparison expression (different signedness):
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 40e02117ca786975378e324ac2e14cc00b00206e commit: 83b931be40b2829e20f38356509d8706ea6b6238 [3301/3301] mm/damon/core-test: test damon_set_regions config: x86_64-randconfig-123-20251123 (https://download.01.org/0day-ci/archive/20251123/202511231439.ABUnWfea-lkp@…) compiler: gcc-14 (Debian 14.2.0-19) 14.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511231439.ABUnWfea-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511231439.ABUnWfea-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) mm/damon/core.c: note: in included file: >> mm/damon/core-test.h:284:9: sparse: sparse: incompatible types in comparison expression (different signedness): mm/damon/core-test.h:284:9: sparse: unsigned int * mm/damon/core-test.h:284:9: sparse: int * vim +284 mm/damon/core-test.h 269 270 static void damon_test_set_regions(struct kunit *test) 271 { 272 struct damon_target *t = damon_new_target(); 273 struct damon_region *r1 = damon_new_region(4, 16); 274 struct damon_region *r2 = damon_new_region(24, 32); 275 struct damon_addr_range range = {.start = 8, .end = 28}; 276 unsigned long expects[] = {8, 16, 16, 24, 24, 28}; 277 int expect_idx = 0; 278 struct damon_region *r; 279 280 damon_add_region(r1, t); 281 damon_add_region(r2, t); 282 damon_set_regions(t, &range, 1); 283 > 284 KUNIT_EXPECT_EQ(test, damon_nr_regions(t), 3); 285 damon_for_each_region(r, t) { 286 KUNIT_EXPECT_EQ(test, r->ar.start, expects[expect_idx++]); 287 KUNIT_EXPECT_EQ(test, r->ar.end, expects[expect_idx++]); 288 } 289 damon_destroy_target(t); 290 } 291 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 1740/1740] mm/mem_reliable.c:272:5: sparse: sparse: symbol 'reliable_debug_handler' was not declared. Should it be static?
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 6c5657aecca1857be6ea39f789159c9acfde2f9e commit: 851a3ff0b4de68403c9a344c3d5378aa590705b7 [1740/1740] mm: Introduce proc interface to control memory reliable features config: arm64-randconfig-r121-20250729 (https://download.01.org/0day-ci/archive/20251123/202511231249.SCHd8IbF-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511231249.SCHd8IbF-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511231249.SCHd8IbF-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) mm/mem_reliable.c:52:14: sparse: sparse: restricted gfp_t degrades to integer mm/mem_reliable.c:199:5: sparse: sparse: symbol 'reliable_limit_handler' was not declared. Should it be static? >> mm/mem_reliable.c:272:5: sparse: sparse: symbol 'reliable_debug_handler' was not declared. Should it be static? mm/mem_reliable.c:199:5: warning: no previous prototype for 'reliable_limit_handler' [-Wmissing-prototypes] 199 | int reliable_limit_handler(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~ mm/mem_reliable.c:272:5: warning: no previous prototype for 'reliable_debug_handler' [-Wmissing-prototypes] 272 | int reliable_debug_handler(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~ vim +/reliable_debug_handler +272 mm/mem_reliable.c 271 > 272 int reliable_debug_handler(struct ctl_table *table, int write, 273 void __user *buffer, size_t *length, loff_t *ppos) 274 { 275 unsigned long old_ctrl_bits, new_ctrl_bits; 276 static DEFINE_MUTEX(reliable_debug_mutex); 277 int ret; 278 279 mutex_lock(&reliable_debug_mutex); 280 old_ctrl_bits = mem_reliable_ctrl_bits; 281 ret = proc_doulongvec_minmax(table, write, buffer, length, ppos); 282 if (ret == 0 && write) { 283 if (mem_reliable_ctrl_bits > (1 << CTRL_BITS_SHIFT) - 1) { 284 mem_reliable_ctrl_bits = old_ctrl_bits; 285 mutex_unlock(&reliable_debug_mutex); 286 287 return -EINVAL; 288 } 289 290 new_ctrl_bits = mem_reliable_ctrl_bits; 291 mem_reliable_ctrl_bits = old_ctrl_bits; 292 if (!!test_bit(MEM_RELIABLE_ALL, &new_ctrl_bits)) 293 mem_reliable_parse_ctrl_bits(new_ctrl_bits); 294 else 295 mem_reliable_disable_all(); 296 } 297 298 mutex_unlock(&reliable_debug_mutex); 299 300 return ret; 301 } 302 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 1740/1740] mm/mem_reliable.c:126:5: sparse: sparse: symbol 'reliable_limit_handler' was not declared. Should it be static?
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 6c5657aecca1857be6ea39f789159c9acfde2f9e commit: 1845e7add95773a24019fb72bbea24a0a568663b [1740/1740] mm: Add reliable memory use limit for user tasks config: arm64-randconfig-r121-20250729 (https://download.01.org/0day-ci/archive/20251123/202511231029.GHGXNbti-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511231029.GHGXNbti-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511231029.GHGXNbti-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) >> mm/mem_reliable.c:126:5: sparse: sparse: symbol 'reliable_limit_handler' was not declared. Should it be static? mm/mem_reliable.c:126:5: warning: no previous prototype for 'reliable_limit_handler' [-Wmissing-prototypes] 126 | int reliable_limit_handler(struct ctl_table *table, int write, | ^~~~~~~~~~~~~~~~~~~~~~ vim +/reliable_limit_handler +126 mm/mem_reliable.c 124 125 #ifdef CONFIG_SYSCTL > 126 int reliable_limit_handler(struct ctl_table *table, int write, 127 void __user *buffer, size_t *length, loff_t *ppos) 128 { 129 unsigned long old = task_reliable_limit; 130 int ret; 131 132 ret = proc_doulongvec_minmax(table, write, buffer, length, ppos); 133 if (ret == 0 && write) { 134 if (task_reliable_limit > total_reliable_mem_sz()) { 135 task_reliable_limit = old; 136 return -EINVAL; 137 } 138 } 139 140 return ret; 141 } 142 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 1740/1740] include/linux/mem_reliable.h:41:15: sparse: sparse: restricted gfp_t degrades to integer
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 6c5657aecca1857be6ea39f789159c9acfde2f9e commit: 33d1f46ad98ea3a13752a6360d97732ab4e119b9 [1740/1740] mm: Introduce memory reliable config: arm64-randconfig-r121-20250729 (https://download.01.org/0day-ci/archive/20251123/202511230702.EBfVb7L8-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511230702.EBfVb7L8-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511230702.EBfVb7L8-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) mm/page_alloc.c:140:1: sparse: sparse: symbol 'pcpu_drain_mutex' was not declared. Should it be static? mm/page_alloc.c: note: in included file (through include/linux/mm.h): >> include/linux/mem_reliable.h:41:15: sparse: sparse: restricted gfp_t degrades to integer mm/page_alloc.c:4572:13: sparse: sparse: restricted gfp_t degrades to integer mm/page_alloc.c:4573:27: sparse: sparse: invalid assignment: |= mm/page_alloc.c:4573:27: sparse: left side has type restricted gfp_t mm/page_alloc.c:4573:27: sparse: right side has type unsigned int mm/page_alloc.c: note: in included file (through include/linux/mm.h): include/linux/gfp.h:457:34: sparse: sparse: restricted gfp_t degrades to integer include/linux/gfp.h:324:27: sparse: sparse: restricted gfp_t degrades to integer include/linux/gfp.h:324:27: sparse: sparse: restricted gfp_t degrades to integer include/linux/gfp.h:457:34: sparse: sparse: restricted gfp_t degrades to integer include/linux/gfp.h:457:34: sparse: sparse: restricted gfp_t degrades to integer mm/page_alloc.c: In function 'mem_init_print_info': mm/page_alloc.c:7373:27: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 20- | ^~ mm/page_alloc.c:7377:9: note: in expansion of macro 'adj_init_size' 7377 | adj_init_size(__init_begin, __init_end, init_data_size, | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: note: use '&__init_begin[0] <= &_sinittext[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 26- | ^~ mm/page_alloc.c:7377:9: note: in expansion of macro 'adj_init_size' 7377 | adj_init_size(__init_begin, __init_end, init_data_size, | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 32- | ^ mm/page_alloc.c:7377:9: note: in expansion of macro 'adj_init_size' 7377 | adj_init_size(__init_begin, __init_end, init_data_size, | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: note: use '&_sinittext[0] < &__init_end[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 38- | ^ mm/page_alloc.c:7377:9: note: in expansion of macro 'adj_init_size' 7377 | adj_init_size(__init_begin, __init_end, init_data_size, | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 44- | ^~ mm/page_alloc.c:7379:9: note: in expansion of macro 'adj_init_size' 7379 | adj_init_size(_stext, _etext, codesize, _sinittext, init_code_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: note: use '&_stext[0] <= &_sinittext[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 50- | ^~ mm/page_alloc.c:7379:9: note: in expansion of macro 'adj_init_size' 7379 | adj_init_size(_stext, _etext, codesize, _sinittext, init_code_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 56- | ^ mm/page_alloc.c:7379:9: note: in expansion of macro 'adj_init_size' 7379 | adj_init_size(_stext, _etext, codesize, _sinittext, init_code_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: note: use '&_sinittext[0] < &_etext[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 62- | ^ mm/page_alloc.c:7379:9: note: in expansion of macro 'adj_init_size' 7379 | adj_init_size(_stext, _etext, codesize, _sinittext, init_code_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 68- | ^~ mm/page_alloc.c:7380:9: note: in expansion of macro 'adj_init_size' 7380 | adj_init_size(_sdata, _edata, datasize, __init_begin, init_data_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: note: use '&_sdata[0] <= &__init_begin[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 74- | ^~ mm/page_alloc.c:7380:9: note: in expansion of macro 'adj_init_size' 7380 | adj_init_size(_sdata, _edata, datasize, __init_begin, init_data_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 80- | ^ mm/page_alloc.c:7380:9: note: in expansion of macro 'adj_init_size' 7380 | adj_init_size(_sdata, _edata, datasize, __init_begin, init_data_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: note: use '&__init_begin[0] < &_edata[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 86- | ^ mm/page_alloc.c:7380:9: note: in expansion of macro 'adj_init_size' 7380 | adj_init_size(_sdata, _edata, datasize, __init_begin, init_data_size); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 92- | ^~ mm/page_alloc.c:7381:9: note: in expansion of macro 'adj_init_size' 7381 | adj_init_size(_stext, _etext, codesize, __start_rodata, rosize); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:27: note: use '&_stext[0] <= &__start_rodata[0]' to compare the addresses 7373 | if (start <= pos && pos < end && size > adj) 98- | ^~ mm/page_alloc.c:7381:9: note: in expansion of macro 'adj_init_size' 7381 | adj_init_size(_stext, _etext, codesize, __start_rodata, rosize); | ^~~~~~~~~~~~~ mm/page_alloc.c:7373:41: warning: comparison between two arrays [-Warray-compare] 7373 | if (start <= pos && pos < end && size > adj) 104- | ^ mm/page_alloc.c:7381:9: note: in expansion of macro 'adj_init_size' 7381 | adj_init_size(_stext, _etext, codesize, __start_rodata, rosize); vim +41 include/linux/mem_reliable.h 31 32 static inline bool skip_none_movable_zone(gfp_t gfp, struct zoneref *z) 33 { 34 if (!mem_reliable_is_enabled()) 35 return false; 36 37 if (!current->mm || (current->flags & PF_KTHREAD)) 38 return false; 39 40 /* user tasks can only alloc memory from non-mirrored region */ > 41 if (!(gfp & ___GFP_RELIABILITY) && (gfp & __GFP_HIGHMEM) && 42 (gfp & __GFP_MOVABLE)) { 43 if (zonelist_zone_idx(z) < ZONE_MOVABLE) 44 return true; 45 } 46 47 return false; 48 } 49 #else 50 #define reliable_enabled 0 51 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3306/3306] include/trace/events/kmem.h:416:1: error: incompatible function pointer types passing 'void (void *, struct mem_sampling_record *)' to parameter of type 'void (*)(void *, struct mem_sampling_record *)'
by kernel test robot 23 Nov '25

23 Nov '25
Hi Ze, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: ea193ff9f080f6657caa2b5f907d5465ca3147dc commit: 5c9754d56876f60e199456beda45715da2d1a20b [3306/3306] mm/mem_sampling: Add eBPF interface for memory access tracing config: arm64-randconfig-003-20251123 (https://download.01.org/0day-ci/archive/20251123/202511230641.K6V35Qsp-lkp@…) compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 9e9fe08b16ea2c4d9867fb4974edf2a3776d6ece) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511230641.K6V35Qsp-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511230641.K6V35Qsp-lkp@intel.com/ All error/warnings (new ones prefixed by >>): In file included from mm/slub.c:46: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] mm/slub.c:2281:15: warning: variable 'partial_slabs' set but not used [-Wunused-but-set-variable] 2281 | unsigned int partial_slabs = 0; | ^ 8 warnings and 2 errors generated. -- In file included from mm/slab_common.c:35: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:95: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:416:1: error: conflicting types for '__traceiter_mm_spe_record' 416 | TRACE_EVENT(mm_spe_record, | ^ include/trace/define_trace.h:28:2: note: expanded from macro 'TRACE_EVENT' 28 | DEFINE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:341:2: note: expanded from macro 'DEFINE_TRACE' 341 | DEFINE_TRACE_FN(name, NULL, NULL, PARAMS(proto), PARAMS(args)); | ^ include/linux/tracepoint.h:305:6: note: expanded from macro 'DEFINE_TRACE_FN' 305 | int __traceiter_##_name(void *__data, proto); \ | ^ <scratch space>:97:1: note: expanded from here 97 | __traceiter_mm_spe_record | ^ include/trace/events/kmem.h:416:1: note: previous declaration is here 416 | TRACE_EVENT(mm_spe_record, | ^ include/linux/tracepoint.h:566:2: note: expanded from macro 'TRACE_EVENT' 566 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:432:2: note: expanded from macro 'DECLARE_TRACE' 432 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \ | ^ include/linux/tracepoint.h:252:13: note: expanded from macro '__DECLARE_TRACE' 252 | extern int __traceiter_##name(data_proto); \ | ^ <scratch space>:20:1: note: expanded from here 20 | __traceiter_mm_spe_record | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:95: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] include/trace/events/kmem.h:416:1: error: conflicting types for '__traceiter_mm_spe_record' 416 | TRACE_EVENT(mm_spe_record, | ^ include/trace/define_trace.h:28:2: note: expanded from macro 'TRACE_EVENT' 28 | DEFINE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:341:2: note: expanded from macro 'DEFINE_TRACE' 341 | DEFINE_TRACE_FN(name, NULL, NULL, PARAMS(proto), PARAMS(args)); | ^ include/linux/tracepoint.h:319:6: note: expanded from macro 'DEFINE_TRACE_FN' 319 | int __traceiter_##_name(void *__data, proto) \ | ^ <scratch space>:107:1: note: expanded from here 107 | __traceiter_mm_spe_record | ^ include/trace/events/kmem.h:416:1: note: previous declaration is here 416 | TRACE_EVENT(mm_spe_record, | ^ include/linux/tracepoint.h:566:2: note: expanded from macro 'TRACE_EVENT' 566 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:432:2: note: expanded from macro 'DECLARE_TRACE' 432 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \ | ^ include/linux/tracepoint.h:252:13: note: expanded from macro '__DECLARE_TRACE' 252 | extern int __traceiter_##name(data_proto); \ | ^ <scratch space>:20:1: note: expanded from here 20 | __traceiter_mm_spe_record | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:95: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:416:1: error: conflicting types for '__probestub_mm_spe_record' 416 | TRACE_EVENT(mm_spe_record, | ^ include/trace/define_trace.h:28:2: note: expanded from macro 'TRACE_EVENT' 28 | DEFINE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:341:2: note: expanded from macro 'DEFINE_TRACE' 341 | DEFINE_TRACE_FN(name, NULL, NULL, PARAMS(proto), PARAMS(args)); | ^ include/linux/tracepoint.h:335:7: note: expanded from macro 'DEFINE_TRACE_FN' 335 | void __probestub_##_name(void *__data, proto) \ | ^ <scratch space>:118:1: note: expanded from here 118 | __probestub_mm_spe_record | ^ include/trace/events/kmem.h:416:1: note: previous declaration is here include/trace/define_trace.h:28:2: note: expanded from macro 'TRACE_EVENT' 28 | DEFINE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:341:2: note: expanded from macro 'DEFINE_TRACE' 341 | DEFINE_TRACE_FN(name, NULL, NULL, PARAMS(proto), PARAMS(args)); | ^ include/linux/tracepoint.h:306:7: note: expanded from macro 'DEFINE_TRACE_FN' 306 | void __probestub_##_name(void *__data, proto); \ | ^ <scratch space>:98:1: note: expanded from here 98 | __probestub_mm_spe_record | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:102: In file included from include/trace/trace_events.h:286: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:102: In file included from include/trace/trace_events.h:460: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:102: In file included from include/trace/trace_events.h:460: include/trace/events/kmem.h:428:26: error: incomplete definition of type 'struct mem_sampling_record' 428 | __entry->vaddr = record->virt_addr; | ~~~~~~^ include/trace/events/kmem.h:417:18: note: forward declaration of 'struct mem_sampling_record' 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:429:26: error: incomplete definition of type 'struct mem_sampling_record' 429 | __entry->paddr = record->phys_addr; | ~~~~~~^ include/trace/events/kmem.h:417:18: note: forward declaration of 'struct mem_sampling_record' 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:430:24: error: incomplete definition of type 'struct mem_sampling_record' 430 | __entry->pid = record->context_id; | ~~~~~~^ include/trace/events/kmem.h:417:18: note: forward declaration of 'struct mem_sampling_record' 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:416:1: error: incompatible function pointer types passing 'void (void *, struct mem_sampling_record *)' to parameter of type 'void (*)(void *, struct mem_sampling_record *)' [-Wincompatible-function-pointer-types] 416 | TRACE_EVENT(mm_spe_record, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ 417 | TP_PROTO(struct mem_sampling_record *record), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 418 | 419 | TP_ARGS(record), | ~~~~~~~~~~~~~~~~ 420 | 421 | TP_STRUCT__entry( | ~~~~~~~~~~~~~~~~~ 422 | __field(u64, vaddr) | ~~~~~~~~~~~~~~~~~~~ 423 | __field(u64, paddr) | ~~~~~~~~~~~~~~~~~~~ 424 | __field(int, pid) | ~~~~~~~~~~~~~~~~~ 425 | ), | ~~ 426 | 427 | TP_fast_assign( | ~~~~~~~~~~~~~~~ 428 | __entry->vaddr = record->virt_addr; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 429 | __entry->paddr = record->phys_addr; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 430 | __entry->pid = record->context_id; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 431 | include/trace/trace_events.h:46:2: note: expanded from macro 'TRACE_EVENT' 46 | DEFINE_EVENT(name, name, PARAMS(proto), PARAMS(args)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/trace/trace_events.h:457:35: note: expanded from macro 'DEFINE_EVENT' 457 | check_trace_callback_type_##call(trace_event_raw_event_##template); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <scratch space>:129:1: note: expanded from here 129 | trace_event_raw_event_mm_spe_record | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/trace/events/kmem.h:416:1: note: passing argument to parameter 'cb' here 416 | TRACE_EVENT(mm_spe_record, | ^ include/linux/tracepoint.h:566:2: note: expanded from macro 'TRACE_EVENT' 566 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:432:2: note: expanded from macro 'DECLARE_TRACE' 432 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \ | ^ include/linux/tracepoint.h:287:42: note: expanded from macro '__DECLARE_TRACE' 287 | check_trace_callback_type_##name(void (*cb)(data_proto)) \ | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:102: In file included from include/trace/trace_events.h:512: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:103: In file included from include/trace/perf.h:75: >> include/trace/events/kmem.h:417:18: warning: declaration of 'struct mem_sampling_record' will not be visible outside of this function [-Wvisibility] 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:416:1: error: conflicting types for 'perf_trace_mm_spe_record' 416 | TRACE_EVENT(mm_spe_record, | ^ include/trace/trace_events.h:40:2: note: expanded from macro 'TRACE_EVENT' 40 | DECLARE_EVENT_CLASS(name, \ | ^ include/trace/perf.h:17:27: note: expanded from macro 'DECLARE_EVENT_CLASS' 17 | static notrace void \ | ^ <scratch space>:5:1: note: expanded from here 5 | perf_trace_mm_spe_record | ^ include/trace/events/kmem.h:416:1: note: previous declaration is here 416 | TRACE_EVENT(mm_spe_record, | ^ include/trace/trace_events.h:40:2: note: expanded from macro 'TRACE_EVENT' 40 | DECLARE_EVENT_CLASS(name, \ | ^ include/trace/trace_events.h:467:72: note: expanded from macro 'DECLARE_EVENT_CLASS' 467 | #define DECLARE_EVENT_CLASS(call, proto, args, tstruct, assign, print) \ | ^ include/trace/trace_events.h:383:2: note: expanded from macro '\ _TRACE_PERF_PROTO' 383 | perf_trace_##call(void *__data, proto); | ^ <scratch space>:57:1: note: expanded from here 57 | perf_trace_mm_spe_record | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:103: In file included from include/trace/perf.h:75: include/trace/events/kmem.h:419:10: error: incompatible pointer types passing 'struct mem_sampling_record *' to parameter of type 'struct mem_sampling_record *' [-Wincompatible-pointer-types] 419 | TP_ARGS(record), | ^~~~~~ include/trace/events/kmem.h:417:39: note: passing argument to parameter 'record' here 417 | TP_PROTO(struct mem_sampling_record *record), | ^ In file included from mm/slab_common.c:35: In file included from include/trace/events/kmem.h:441: In file included from include/trace/define_trace.h:103: In file included from include/trace/perf.h:75: include/trace/events/kmem.h:428:26: error: incomplete definition of type 'struct mem_sampling_record' 428 | __entry->vaddr = record->virt_addr; | ~~~~~~^ include/trace/events/kmem.h:417:18: note: forward declaration of 'struct mem_sampling_record' 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:429:26: error: incomplete definition of type 'struct mem_sampling_record' 429 | __entry->paddr = record->phys_addr; | ~~~~~~^ include/trace/events/kmem.h:417:18: note: forward declaration of 'struct mem_sampling_record' 417 | TP_PROTO(struct mem_sampling_record *record), | ^ include/trace/events/kmem.h:430:24: error: incomplete definition of type 'struct mem_sampling_record' 430 | __entry->pid = record->context_id; | ~~~~~~^ include/trace/events/kmem.h:417:18: note: forward declaration of 'struct mem_sampling_record' 417 | TP_PROTO(struct mem_sampling_record *record), | ^ >> include/trace/events/kmem.h:416:1: error: incompatible function pointer types passing 'void (void *, struct mem_sampling_record *)' to parameter of type 'void (*)(void *, struct mem_sampling_record *)' [-Wincompatible-function-pointer-types] 416 | TRACE_EVENT(mm_spe_record, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ 417 | TP_PROTO(struct mem_sampling_record *record), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 418 | 419 | TP_ARGS(record), | ~~~~~~~~~~~~~~~~ 420 | 421 | TP_STRUCT__entry( | ~~~~~~~~~~~~~~~~~ 422 | __field(u64, vaddr) | ~~~~~~~~~~~~~~~~~~~ 423 | __field(u64, paddr) | ~~~~~~~~~~~~~~~~~~~ 424 | __field(int, pid) | ~~~~~~~~~~~~~~~~~ 425 | ), | ~~ 426 | 427 | TP_fast_assign( | ~~~~~~~~~~~~~~~ 428 | __entry->vaddr = record->virt_addr; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 429 | __entry->paddr = record->phys_addr; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 430 | __entry->pid = record->context_id; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 431 | include/trace/trace_events.h:46:2: note: expanded from macro 'TRACE_EVENT' 46 | DEFINE_EVENT(name, name, PARAMS(proto), PARAMS(args)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/trace/perf.h:67:35: note: expanded from macro 'DEFINE_EVENT' 67 | check_trace_callback_type_##call(perf_trace_##template); \ | ^~~~~~~~~~~~~~~~~~~~~ <scratch space>:11:1: note: expanded from here 11 | perf_trace_mm_spe_record | ^~~~~~~~~~~~~~~~~~~~~~~~ include/trace/events/kmem.h:416:1: note: passing argument to parameter 'cb' here 416 | TRACE_EVENT(mm_spe_record, | ^ include/linux/tracepoint.h:566:2: note: expanded from macro 'TRACE_EVENT' 566 | DECLARE_TRACE(name, PARAMS(proto), PARAMS(args)) | ^ include/linux/tracepoint.h:432:2: note: expanded from macro 'DECLARE_TRACE' 432 | __DECLARE_TRACE(name, PARAMS(proto), PARAMS(args), \ | ^ include/linux/tracepoint.h:287:42: note: expanded from macro '__DECLARE_TRACE' 287 | check_trace_callback_type_##name(void (*cb)(data_proto)) \ | ^ 16 warnings and 17 errors generated. .. vim +416 include/trace/events/kmem.h 388 389 TP_PROTO(struct mm_struct *mm, 390 int member), 391 392 TP_ARGS(mm, member), 393 394 TP_STRUCT__entry( 395 __field(unsigned int, mm_id) 396 __field(unsigned int, curr) 397 __field(int, member) 398 __field(long, size) 399 ), 400 401 TP_fast_assign( 402 __entry->mm_id = mm_ptr_to_hash(mm); 403 __entry->curr = !!(current->mm == mm); 404 __entry->member = member; 405 __entry->size = (mm_counter_sum_positive(mm, member) 406 << PAGE_SHIFT); 407 ), 408 409 TP_printk("mm_id=%u curr=%d type=%s size=%ldB", 410 __entry->mm_id, 411 __entry->curr, 412 __print_symbolic(__entry->member, TRACE_MM_PAGES), 413 __entry->size) 414 ); 415 #ifdef CONFIG_ARM_SPE_MEM_SAMPLING > 416 TRACE_EVENT(mm_spe_record, > 417 TP_PROTO(struct mem_sampling_record *record), 418 419 TP_ARGS(record), 420 421 TP_STRUCT__entry( 422 __field(u64, vaddr) 423 __field(u64, paddr) 424 __field(int, pid) 425 ), 426 427 TP_fast_assign( 428 __entry->vaddr = record->virt_addr; 429 __entry->paddr = record->phys_addr; 430 __entry->pid = record->context_id; 431 432 ), 433 434 TP_printk("vaddr=%llu paddr=%llu pid=%d", 435 __entry->vaddr, __entry->paddr, __entry->pid) 436 ); 437 #endif /* CONFIG_ARM_SPE_MEM_SAMPLING */ 438 #endif /* _TRACE_KMEM_H */ 439 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3306/3306] arch/arm64/kernel/xcall/xcall.c:49:24: warning: address of array '((struct xcall_info *)task->xinfo)->xcall_enable' will always evaluate to 'true'
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: ea193ff9f080f6657caa2b5f907d5465ca3147dc commit: fd83d0fe16f1c0a0b163480a40e424a6d3438612 [3306/3306] xcall: Rework the early exception vector of XCALL and SYNC config: arm64-randconfig-004-20251123 (https://download.01.org/0day-ci/archive/20251123/202511230550.gjk44kyv-lkp@…) compiler: clang version 22.0.0git (https://github.com/llvm/llvm-project 9e9fe08b16ea2c4d9867fb4974edf2a3776d6ece) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511230550.gjk44kyv-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511230550.gjk44kyv-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from <built-in>:3: In file included from include/linux/compiler_types.h:150: include/linux/compiler-clang.h:33:9: warning: '__SANITIZE_ADDRESS__' macro redefined [-Wmacro-redefined] 33 | #define __SANITIZE_ADDRESS__ | ^ <built-in>:367:9: note: previous definition is here 367 | #define __SANITIZE_ADDRESS__ 1 | ^ >> arch/arm64/kernel/xcall/xcall.c:49:24: warning: address of array '((struct xcall_info *)task->xinfo)->xcall_enable' will always evaluate to 'true' [-Wpointer-bool-conversion] 49 | if (TASK_XINFO(task)->xcall_enable) | ~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ 2 warnings generated. vim +49 arch/arm64/kernel/xcall/xcall.c 46 47 void xcall_info_switch(struct task_struct *task) 48 { > 49 if (TASK_XINFO(task)->xcall_enable) -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 3301/3301] drivers/misc/zcopy/zcopy.c:259:5: warning: no previous prototype for 'attach_huge_pmd'
by kernel test robot 23 Nov '25

23 Nov '25
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 40e02117ca786975378e324ac2e14cc00b00206e commit: 2125c55fc8765bced7091ccef19d2733a9ad9de0 [3301/3301] zcopy: Extend PMD trans hugepage mapping ability config: arm64-randconfig-002-20251123 (https://download.01.org/0day-ci/archive/20251123/202511230145.Q8A14oTe-lkp@…) compiler: aarch64-linux-gcc (GCC) 11.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251123/202511230145.Q8A14oTe-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511230145.Q8A14oTe-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/misc/zcopy/zcopy.c:259:5: warning: no previous prototype for 'attach_huge_pmd' [-Wmissing-prototypes] 259 | int attach_huge_pmd(struct vm_area_struct *dst_vma, struct vm_area_struct *src_vma, | ^~~~~~~~~~~~~~~ vim +/attach_huge_pmd +259 drivers/misc/zcopy/zcopy.c 258 > 259 int attach_huge_pmd(struct vm_area_struct *dst_vma, struct vm_area_struct *src_vma, 260 unsigned long dst_addr, unsigned long src_addr, pmd_t *dst_pmdp, pmd_t *src_pmdp) 261 { 262 struct mm_struct *dst_mm, *src_mm; 263 spinlock_t *src_ptl, *dst_ptl; 264 struct page *src_thp_page, *orig_thp_page; 265 pmd_t pmd, orig_pmd; 266 pgtable_t pgtable; 267 268 269 if (!vma_is_anonymous(dst_vma)) 270 return -EINVAL; 271 272 dst_mm = dst_vma->vm_mm; 273 src_mm = src_vma->vm_mm; 274 275 /* alloc a pgtable for new pmdp */ 276 pgtable = pte_alloc_one(dst_mm); 277 if (unlikely(!pgtable)) 278 return -ENOMEM; 279 280 src_ptl = pmd_lockptr(src_mm, src_pmdp); 281 dst_ptl = pmd_lockptr(dst_mm, dst_pmdp); 282 283 spin_lock(src_ptl); 284 pmd = *src_pmdp; 285 src_thp_page = pmd_page(pmd); 286 if (unlikely(!PageHead(src_thp_page))) { 287 pr_err("VM assertion failed: it is not a head page\n"); 288 spin_unlock(src_ptl); 289 return -EINVAL; 290 } 291 292 get_page(src_thp_page); 293 atomic_inc(compound_mapcount_ptr(src_thp_page)); 294 spin_unlock(src_ptl); 295 296 spin_lock_nested(dst_ptl, SINGLE_DEPTH_NESTING); 297 orig_pmd = *dst_pmdp; 298 /* umap the old page mappings */ 299 if (!pmd_none(orig_pmd)) { 300 orig_thp_page = pmd_page(orig_pmd); 301 put_page(orig_thp_page); 302 atomic_dec(compound_mapcount_ptr(orig_thp_page)); 303 zcopy_add_mm_counter(dst_mm, MM_ANONPAGES, -HPAGE_PMD_NR); 304 mm_dec_nr_ptes(dst_mm); 305 } 306 307 zcopy_add_mm_counter(dst_mm, MM_ANONPAGES, HPAGE_PMD_NR); 308 mm_inc_nr_ptes(dst_mm); 309 zcopy_pgtable_trans_huge_deposit(dst_mm, dst_pmdp, pgtable); 310 zcopy_set_pmd_at(dst_mm, dst_addr, dst_pmdp, pmd); 311 flush_tlb_range(dst_vma, dst_addr, dst_addr + HPAGE_PMD_SIZE); 312 spin_unlock(dst_ptl); 313 314 return 0; 315 } 316 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3304/3304] arch/arm64/kvm/vgic/vgic-its.c:567:40: error: passing argument 1 of 'hisi_ipiv_supported_per_vm' from incompatible pointer type
by kernel test robot 22 Nov '25

22 Nov '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: ea193ff9f080f6657caa2b5f907d5465ca3147dc commit: 22f1e3b38ca09cbc655a606e6404b996710841a1 [3304/3304] KVM: arm64: ipiv: fix bug in live migration config: arm64-defconfig (https://download.01.org/0day-ci/archive/20251122/202511221815.EIAnEfb9-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251122/202511221815.EIAnEfb9-lkp@…) 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(a)intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202511221815.EIAnEfb9-lkp@intel.com/ All errors (new ones prefixed by >>): arch/arm64/kvm/vgic/vgic-its.c: In function 'vgic_mmio_uaccess_write_its_iidr': >> arch/arm64/kvm/vgic/vgic-its.c:567:40: error: passing argument 1 of 'hisi_ipiv_supported_per_vm' from incompatible pointer type [-Wincompatible-pointer-types] 567 | if (hisi_ipiv_supported_per_vm(kvm) && | ^~~ | | | struct kvm * In file included from arch/arm64/kvm/vgic/vgic-its.c:25: arch/arm64/kvm/hisilicon/hisi_virt.h:127:64: note: expected 'struct kvm_vcpu *' but argument is of type 'struct kvm *' 127 | static inline bool hisi_ipiv_supported_per_vm(struct kvm_vcpu *vcpu) | ~~~~~~~~~~~~~~~~~^~~~ vim +/hisi_ipiv_supported_per_vm +567 arch/arm64/kvm/vgic/vgic-its.c 555 556 static int vgic_mmio_uaccess_write_its_iidr(struct kvm *kvm, 557 struct vgic_its *its, 558 gpa_t addr, unsigned int len, 559 unsigned long val) 560 { 561 u32 rev = GITS_IIDR_REV(val); 562 563 if (rev >= NR_ITS_ABIS) 564 return -EINVAL; 565 566 #ifdef CONFIG_ARM64_HISI_IPIV > 567 if (hisi_ipiv_supported_per_vm(kvm) && 568 val & (1UL << HISI_GUEST_ENABLE_IPIV_SHIFT)) 569 kvm->arch.vgic.its_vm.enable_ipiv_from_guest = true; 570 #endif 571 572 return vgic_its_set_abi(its, rev); 573 } 574 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • ...
  • 2153
  • Older →

HyperKitty Powered by HyperKitty