Hi Tang,
FYI, the error/warning still remains.
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 4c37b6449701a1fcb16050d4e517fa6d505673e1
commit: 1cfc25ccec44c17c19c892bd31d00d8f6fb23f9b [1297/1297] share_pool: Add proc node to show process overview info
config: arm64-randconfig-002-20241117 (https://download.01.org/0day-ci/archive/20241117/202411170716.qehM7edl-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241117/202411170716.qehM7edl-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/202411170716.qehM7edl-lkp@intel.com/
All warnings (new ones prefixed by >>):
mm/share_pool.c: In function 'sp_group_id_by_pid':
mm/share_pool.c:840:29: warning: ordered comparison of pointer with integer zero [-Wextra]
840 | if (!spg_ids || num <= 0)
| ^~
mm/share_pool.c: In function 'sp_compact_nodes':
mm/share_pool.c:1689:9: error: implicit declaration of function 'sysctl_compaction_handler'; did you mean 'sysctl_memcg_qos_handler'? [-Werror=implicit-function-declaration]
1689 | sysctl_compaction_handler(NULL, 1, NULL, NULL, NULL);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| sysctl_memcg_qos_handler
mm/share_pool.c: At top level:
>> mm/share_pool.c:3736:12: warning: 'proc_overview_show' defined but not used [-Wunused-function]
3736 | static int proc_overview_show(struct seq_file *seq, void *offset)
| ^~~~~~~~~~~~~~~~~~
mm/share_pool.c:3693:12: warning: 'proc_stat_show' defined but not used [-Wunused-function]
3693 | static int proc_stat_show(struct seq_file *seq, void *offset)
| ^~~~~~~~~~~~~~
mm/share_pool.c:3635:12: warning: 'spa_stat_show' defined but not used [-Wunused-function]
3635 | static int spa_stat_show(struct seq_file *seq, void *offset)
| ^~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/proc_overview_show +3736 mm/share_pool.c
3735
> 3736 static int proc_overview_show(struct seq_file *seq, void *offset)
3737 {
3738 seq_printf(seq, "%-8s %-16s %-9s %-9s %-9s %-10s %-10s %-8s\n",
3739 "PID", "COMM", "SP_ALLOC", "SP_K2U", "SP_RES", "Non-SP_RES",
3740 "Non-SP_Shm", "VIRT");
3741
3742 down_read(&sp_proc_stat_sem);
3743 idr_for_each(&sp_proc_stat_idr, idr_proc_overview_cb, seq);
3744 up_read(&sp_proc_stat_sem);
3745 return 0;
3746 }
3747
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Hi Zhou,
FYI, the error/warning still remains.
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 4c37b6449701a1fcb16050d4e517fa6d505673e1
commit: d45b33b72c530e64219ad997947a33f6e07d339c [1297/1297] share pool: Try to compact when memory is insufficient
config: arm64-randconfig-002-20241117 (https://download.01.org/0day-ci/archive/20241117/202411170615.z7wW3RFB-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241117/202411170615.z7wW3RFB-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/202411170615.z7wW3RFB-lkp@intel.com/
All errors (new ones prefixed by >>):
mm/share_pool.c: In function 'sp_compact_nodes':
>> mm/share_pool.c:1043:9: error: implicit declaration of function 'sysctl_compaction_handler'; did you mean 'sysctl_memcg_qos_handler'? [-Werror=implicit-function-declaration]
1043 | sysctl_compaction_handler(NULL, 1, NULL, NULL, NULL);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| sysctl_memcg_qos_handler
mm/share_pool.c: At top level:
mm/share_pool.c:2482:12: warning: 'spa_stat_show' defined but not used [-Wunused-function]
2482 | static int spa_stat_show(struct seq_file *seq, void *offset)
| ^~~~~~~~~~~~~
mm/share_pool.c:2363:12: warning: 'proc_stat_show' defined but not used [-Wunused-function]
2363 | static int proc_stat_show(struct seq_file *seq, void *offset)
| ^~~~~~~~~~~~~~
In file included from mm/share_pool.c:22:
In function 'memalloc_noreclaim_restore',
inlined from 'sp_alloc' at mm/share_pool.c:1374:4:
include/linux/sched/mm.h:278:58: warning: 'noreclaim_flag' may be used uninitialized [-Wmaybe-uninitialized]
278 | current->flags = (current->flags & ~PF_MEMALLOC) | flags;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
mm/share_pool.c: In function 'sp_alloc':
mm/share_pool.c:1238:22: note: 'noreclaim_flag' was declared here
1238 | unsigned int noreclaim_flag;
| ^~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +1043 mm/share_pool.c
1039
1040 static unsigned long last_jiffies;
1041 static void sp_compact_nodes(struct work_struct *work)
1042 {
> 1043 sysctl_compaction_handler(NULL, 1, NULL, NULL, NULL);
1044
1045 kfree(work);
1046 }
1047
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 7c547c6bbe6b6a9cedf63d7cdadb2529404df633
commit: 24ac42fb86c6acfcb89b76d3b2fd6fba9bfd89de [1474/1474] ima: rot: Adapt VirtCCA into Rot
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20241117/202411170355.mew4P3B3-lkp@…)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 592c0fe55f6d9a811028b5f3507be91458ab2713)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241117/202411170355.mew4P3B3-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/202411170355.mew4P3B3-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from security/integrity/ima/ima_virtcca.c:7:
In file included from security/integrity/ima/ima.h:19:
In file included from include/linux/security.h:33:
In file included from include/linux/mm.h:2247:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
537 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> security/integrity/ima/ima_virtcca.c:30:5: warning: no previous prototype for function 'ima_virtcca_init' [-Wmissing-prototypes]
30 | int ima_virtcca_init(struct ima_rot *rot)
| ^
security/integrity/ima/ima_virtcca.c:30:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
30 | int ima_virtcca_init(struct ima_rot *rot)
| ^
| static
>> security/integrity/ima/ima_virtcca.c:59:5: warning: no previous prototype for function 'ima_calc_virtcca_boot_aggregate' [-Wmissing-prototypes]
59 | int ima_calc_virtcca_boot_aggregate(struct ima_digest_data *hash)
| ^
security/integrity/ima/ima_virtcca.c:59:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
59 | int ima_calc_virtcca_boot_aggregate(struct ima_digest_data *hash)
| ^
| static
>> security/integrity/ima/ima_virtcca.c:81:5: warning: no previous prototype for function 'ima_virtcca_extend' [-Wmissing-prototypes]
81 | int ima_virtcca_extend(struct tpm_digest *digests_arg, const void *args)
| ^
security/integrity/ima/ima_virtcca.c:81:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
81 | int ima_virtcca_extend(struct tpm_digest *digests_arg, const void *args)
| ^
| static
8 warnings generated.
vim +/ima_virtcca_init +30 security/integrity/ima/ima_virtcca.c
29
> 30 int ima_virtcca_init(struct ima_rot *rot)
31 {
32 int rc;
33
34 if (!is_virtcca_cvm_world() || tsi_get_version() == SMCCC_RET_NOT_SUPPORTED)
35 return -ENODEV;
36
37 rc = ima_virtcca_init_algo();
38 if (rc)
39 return rc;
40
41 if (virtcca_algo != ima_hash_algo) {
42 pr_info("VirtCCA's algo (%s) is different from ima_hash_algo (%s)\n",
43 hash_algo_name[virtcca_algo], hash_algo_name[ima_hash_algo]);
44
45 rot->allocated_banks = kcalloc(1, sizeof(*rot->allocated_banks), GFP_KERNEL);
46 if (!rot->allocated_banks)
47 return -ENOMEM;
48
49 rot->nr_allocated_banks = 1;
50 rot->allocated_banks[0].alg_id = (virtcca_algo == HASH_ALGO_SHA512) ?
51 TPM_ALG_SHA512 : TPM_ALG_SHA256;
52 rot->allocated_banks[0].digest_size = hash_digest_size[virtcca_algo];
53 rot->allocated_banks[0].crypto_id = virtcca_algo;
54 }
55
56 return 0;
57 }
58
> 59 int ima_calc_virtcca_boot_aggregate(struct ima_digest_data *hash)
60 {
61 unsigned long result;
62 struct virtcca_cvm_measurement cm = { 0 };
63
64 hash->algo = virtcca_algo;
65 hash->length = hash_digest_size[virtcca_algo];
66
67 /* Read the measurement result of RIM as the boot aggregate */
68 cm.index = RIM_MEASUREMENT_SLOT;
69
70 result = tsi_measurement_read(&cm);
71 if (result != TSI_SUCCESS) {
72 pr_err("Error reading cvm measurement 0 for boot aggregate\n");
73 return -EFAULT;
74 }
75
76 memcpy(hash->digest, cm.value, hash->length);
77
78 return 0;
79 }
80
> 81 int ima_virtcca_extend(struct tpm_digest *digests_arg, const void *args)
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 7c547c6bbe6b6a9cedf63d7cdadb2529404df633
commit: b89997c5e3ffa58c43c4cb3547eb0c11b75d0634 [1474/1474] IMA support script execution check
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20241117/202411170343.CvgDZzI7-lkp@…)
compiler: loongarch64-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241117/202411170343.CvgDZzI7-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/202411170343.CvgDZzI7-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> security/integrity/ima/ima_main.c:645: warning: Function parameter or member 'bprm' not described in 'ima_bprm_creds_for_exec'
vim +645 security/integrity/ima/ima_main.c
640
641 /**
642 * ima_bprm_creds_for_exec - ima support exec check.
643 */
644 int ima_bprm_creds_for_exec(struct linux_binprm *bprm)
> 645 {
646 if (!bprm->is_check)
647 return 0;
648
649 return ima_bprm_check(bprm);
650 }
651
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Hi GONG,
FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 7c547c6bbe6b6a9cedf63d7cdadb2529404df633
commit: 40151ef24c1a0f35c5e0442834eb776877e66683 [1474/1474] ima: rot: Prepare TPM as an RoT
config: x86_64-rhel-8.3-kselftests (https://download.01.org/0day-ci/archive/20241117/202411170123.vN1EUOxu-lkp@…)
compiler: clang version 19.1.3 (https://github.com/llvm/llvm-project ab51eccf88f5321e7c60591c5546b254b6afab99)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241117/202411170123.vN1EUOxu-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/202411170123.vN1EUOxu-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from security/integrity/ima/ima_tpm.c:12:
In file included from include/linux/tpm.h:24:
In file included from include/linux/highmem.h:8:
In file included from include/linux/cacheflush.h:5:
In file included from arch/x86/include/asm/cacheflush.h:5:
In file included from include/linux/mm.h:2247:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
537 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> security/integrity/ima/ima_tpm.c:19:6: warning: no previous prototype for function 'ima_pcrread' [-Wmissing-prototypes]
19 | void ima_pcrread(u32 idx, struct tpm_digest *d)
| ^
security/integrity/ima/ima_tpm.c:19:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
19 | void ima_pcrread(u32 idx, struct tpm_digest *d)
| ^
| static
security/integrity/ima/ima_tpm.c:28:5: warning: no previous prototype for function 'ima_pcr_extend' [-Wmissing-prototypes]
28 | int ima_pcr_extend(struct tpm_digest *digests_arg, int pcr)
| ^
security/integrity/ima/ima_tpm.c:28:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
28 | int ima_pcr_extend(struct tpm_digest *digests_arg, int pcr)
| ^
| static
>> security/integrity/ima/ima_tpm.c:41:5: warning: no previous prototype for function 'ima_tpm_init' [-Wmissing-prototypes]
41 | int ima_tpm_init(struct ima_rot *rot)
| ^
security/integrity/ima/ima_tpm.c:41:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
41 | int ima_tpm_init(struct ima_rot *rot)
| ^
| static
>> security/integrity/ima/ima_tpm.c:53:5: warning: no previous prototype for function 'ima_tpm_extend' [-Wmissing-prototypes]
53 | int ima_tpm_extend(struct tpm_digest *digests_arg, const void *args)
| ^
security/integrity/ima/ima_tpm.c:53:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
53 | int ima_tpm_extend(struct tpm_digest *digests_arg, const void *args)
| ^
| static
>> security/integrity/ima/ima_tpm.c:60:5: warning: no previous prototype for function 'ima_tpm_calc_boot_aggregate' [-Wmissing-prototypes]
60 | int ima_tpm_calc_boot_aggregate(struct ima_digest_data *hash)
| ^
security/integrity/ima/ima_tpm.c:60:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
60 | int ima_tpm_calc_boot_aggregate(struct ima_digest_data *hash)
| ^
| static
10 warnings generated.
vim +/ima_pcrread +19 security/integrity/ima/ima_tpm.c
18
> 19 void ima_pcrread(u32 idx, struct tpm_digest *d)
20 {
21 if (!ima_tpm_chip)
22 return;
23
24 if (tpm_pcr_read(ima_tpm_chip, idx, d) != 0)
25 pr_err("Error Communicating to TPM chip\n");
26 }
27
> 28 int ima_pcr_extend(struct tpm_digest *digests_arg, int pcr)
29 {
30 int result = 0;
31
32 if (!ima_tpm_chip)
33 return result;
34
35 result = tpm_pcr_extend(ima_tpm_chip, pcr, digests_arg);
36 if (result != 0)
37 pr_err("Error Communicating to TPM chip, result: %d\n", result);
38 return result;
39 }
40
> 41 int ima_tpm_init(struct ima_rot *rot)
42 {
43 ima_tpm_chip = tpm_default_chip();
44 if (!ima_tpm_chip)
45 return -ENODEV;
46
47 rot->nr_allocated_banks = ima_tpm_chip->nr_allocated_banks;
48 rot->allocated_banks = ima_tpm_chip->allocated_banks;
49
50 return 0;
51 }
52
> 53 int ima_tpm_extend(struct tpm_digest *digests_arg, const void *args)
54 {
55 const int pcr = *(const int *)args;
56
57 return ima_pcr_extend(digests_arg, pcr);
58 }
59
> 60 int ima_tpm_calc_boot_aggregate(struct ima_digest_data *hash)
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 7c547c6bbe6b6a9cedf63d7cdadb2529404df633
commit: 60f12ac296b9c755ff6f94fed1590a9ae2e6dfa7 [1466/1466] LoongArch: KVM: Add pv ipi support on kvm side
config: loongarch-randconfig-r051-20241114 (https://download.01.org/0day-ci/archive/20241116/202411160232.2JVuDLjW-lkp@…)
compiler: loongarch64-linux-gcc (GCC) 14.2.0
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/202411160232.2JVuDLjW-lkp@intel.com/
cocci warnings: (new ones prefixed by >>)
>> arch/loongarch/kvm/exit.c:768:2-3: Unneeded semicolon
vim +768 arch/loongarch/kvm/exit.c
751
752 /*
753 * hypercall emulation always return to guest, Caller should check retval.
754 */
755 static void kvm_handle_pv_service(struct kvm_vcpu *vcpu)
756 {
757 unsigned long func = vcpu->arch.gprs[LOONGARCH_GPR_A0];
758 long ret;
759
760 switch (func) {
761 case KVM_HCALL_FUNC_PV_IPI:
762 kvm_pv_send_ipi(vcpu);
763 ret = KVM_HCALL_STATUS_SUCCESS;
764 break;
765 default:
766 ret = KVM_HCALL_INVALID_CODE;
767 break;
> 768 };
769
770 vcpu->arch.gprs[LOONGARCH_GPR_A0] = ret;
771 }
772
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki