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

  • 50 participants
  • 22091 discussions
[openeuler:OLK-6.6 1/1] drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:883:6: error: no previous prototype for function 'sss_nic_port_module_cable_plug'
by kernel test robot 21 Dec '25

21 Dec '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: 6864d14bb90f03a1e5b7fbcc04fc2ba4d692bd3e [1/1] support 3SNIC 910/920/930 NIC config: x86_64-allmodconfig (https://download.01.org/0day-ci/archive/20251221/202512211239.WIsno7Ky-lkp@…) compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512211239.WIsno7Ky-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/202512211239.WIsno7Ky-lkp@intel.com/ All errors (new ones prefixed by >>): In file included from drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:6: In file included from include/linux/pci.h:1663: In file included from include/linux/dmapool.h:14: In file included from include/linux/scatterlist.h:8: In file included from include/linux/mm.h:2204: include/linux/vmstat.h:508:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: error: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Werror,-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:883:6: error: no previous prototype for function 'sss_nic_port_module_cable_plug' [-Werror,-Wmissing-prototypes] 883 | void sss_nic_port_module_cable_plug(struct sss_nic_dev *nic_dev, void *event_data) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:883:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 883 | void sss_nic_port_module_cable_plug(struct sss_nic_dev *nic_dev, void *event_data) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:889:6: error: no previous prototype for function 'sss_nic_port_module_cable_unplug' [-Werror,-Wmissing-prototypes] 889 | void sss_nic_port_module_cable_unplug(struct sss_nic_dev *nic_dev, void *event_data) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:889:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 889 | void sss_nic_port_module_cable_unplug(struct sss_nic_dev *nic_dev, void *event_data) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:895:6: error: no previous prototype for function 'sss_nic_port_module_link_err' [-Werror,-Wmissing-prototypes] 895 | void sss_nic_port_module_link_err(struct sss_nic_dev *nic_dev, void *event_data) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:895:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 895 | void sss_nic_port_module_link_err(struct sss_nic_dev *nic_dev, void *event_data) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:1034:22: error: no previous prototype for function 'get_nic_uld_info' [-Werror,-Wmissing-prototypes] 1034 | struct sss_uld_info *get_nic_uld_info(void) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c:1034:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 1034 | struct sss_uld_info *get_nic_uld_info(void) | ^ | static 9 errors generated. -- In file included from drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:6: In file included from include/net/xfrm.h:9: In file included from include/linux/skbuff.h:17: In file included from include/linux/bvec.h:10: 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:2204: include/linux/vmstat.h:508:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: error: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Werror,-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:42:5: error: no previous prototype for function 'sss_nic_alloc_sq_resource' [-Werror,-Wmissing-prototypes] 42 | int sss_nic_alloc_sq_resource(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:42:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 42 | int sss_nic_alloc_sq_resource(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:87:6: error: no previous prototype for function 'sss_nic_free_sq_resource' [-Werror,-Wmissing-prototypes] 87 | void sss_nic_free_sq_resource(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:87:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 87 | void sss_nic_free_sq_resource(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:104:6: error: no previous prototype for function 'sss_nic_init_all_sq' [-Werror,-Wmissing-prototypes] 104 | void sss_nic_init_all_sq(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:104:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 104 | void sss_nic_init_all_sq(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:128:5: error: no previous prototype for function 'sss_nic_alloc_sq_desc_group' [-Werror,-Wmissing-prototypes] 128 | int sss_nic_alloc_sq_desc_group(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:128:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 128 | int sss_nic_alloc_sq_desc_group(struct sss_nic_dev *nic_dev) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:153:6: error: no previous prototype for function 'sss_nic_free_sq_desc_group' [-Werror,-Wmissing-prototypes] 153 | void sss_nic_free_sq_desc_group(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:153:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 153 | void sss_nic_free_sq_desc_group(struct sss_nic_dev *nic_dev) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:200:6: error: no previous prototype for function 'sss_nic_flush_all_sq' [-Werror,-Wmissing-prototypes] 200 | void sss_nic_flush_all_sq(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_tx_init.c:200:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 200 | void sss_nic_flush_all_sq(struct sss_nic_dev *nic_dev) | ^ | static 11 errors generated. -- In file included from drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:8: In file included from include/linux/skbuff.h:17: In file included from include/linux/bvec.h:10: 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:2204: include/linux/vmstat.h:508:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: error: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Werror,-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:80:5: error: no previous prototype for function 'sss_nic_alloc_rq_res_group' [-Werror,-Wmissing-prototypes] 80 | int sss_nic_alloc_rq_res_group(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:80:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 80 | int sss_nic_alloc_rq_res_group(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:136:6: error: no previous prototype for function 'sss_nic_free_rq_res_group' [-Werror,-Wmissing-prototypes] 136 | void sss_nic_free_rq_res_group(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:136:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 136 | void sss_nic_free_rq_res_group(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:208:5: error: no previous prototype for function 'sss_nic_init_rq_desc_group' [-Werror,-Wmissing-prototypes] 208 | int sss_nic_init_rq_desc_group(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:208:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 208 | int sss_nic_init_rq_desc_group(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:235:6: error: no previous prototype for function 'sss_nic_free_rq_desc_group' [-Werror,-Wmissing-prototypes] 235 | void sss_nic_free_rq_desc_group(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:235:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 235 | void sss_nic_free_rq_desc_group(struct sss_nic_dev *nic_dev) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:241:5: error: no previous prototype for function 'sss_nic_alloc_rq_desc_group' [-Werror,-Wmissing-prototypes] 241 | int sss_nic_alloc_rq_desc_group(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:241:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 241 | int sss_nic_alloc_rq_desc_group(struct sss_nic_dev *nic_dev) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:267:5: error: no previous prototype for function 'sss_nic_update_rx_rss' [-Werror,-Wmissing-prototypes] 267 | int sss_nic_update_rx_rss(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:267:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 267 | int sss_nic_update_rx_rss(struct sss_nic_dev *nic_dev) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:282:6: error: no previous prototype for function 'sss_nic_reset_rx_rss' [-Werror,-Wmissing-prototypes] 282 | void sss_nic_reset_rx_rss(struct net_device *netdev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_init.c:282:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 282 | void sss_nic_reset_rx_rss(struct net_device *netdev) | ^ | static 12 errors generated. -- In file included from drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_reset.c:8: In file included from include/linux/skbuff.h:17: In file included from include/linux/bvec.h:10: 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:2204: include/linux/vmstat.h:508:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: error: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Werror,-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_reset.c:179:6: error: no previous prototype for function 'sss_nic_rq_watchdog_handler' [-Werror,-Wmissing-prototypes] 179 | void sss_nic_rq_watchdog_handler(struct work_struct *work) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_rx_reset.c:179:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 179 | void sss_nic_rq_watchdog_handler(struct work_struct *work) | ^ | static 6 errors generated. -- In file included from drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:7: In file included from include/linux/etherdevice.h:20: In file included from include/linux/if_ether.h:19: In file included from include/linux/skbuff.h:17: In file included from include/linux/bvec.h:10: 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:2204: include/linux/vmstat.h:508:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 509 | item]; | ~~~~ include/linux/vmstat.h:515:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 516 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:522:36: error: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Werror,-Wenum-enum-conversion] 522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ include/linux/vmstat.h:527:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 528 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:536:43: error: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Werror,-Wenum-enum-conversion] 536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 537 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:350:6: error: no previous prototype for function 'sss_nic_flush_tcam_list' [-Werror,-Wmissing-prototypes] 350 | void sss_nic_flush_tcam_list(struct sss_nic_tcam_info *tcam_info) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:350:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 350 | void sss_nic_flush_tcam_list(struct sss_nic_tcam_info *tcam_info) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:366:6: error: no previous prototype for function 'sss_nic_flush_tcam_node_list' [-Werror,-Wmissing-prototypes] 366 | void sss_nic_flush_tcam_node_list(struct sss_nic_tcam_info *tcam_info) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:366:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 366 | void sss_nic_flush_tcam_node_list(struct sss_nic_tcam_info *tcam_info) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:382:6: error: no previous prototype for function 'sss_nic_flush_rx_flow_rule' [-Werror,-Wmissing-prototypes] 382 | void sss_nic_flush_rx_flow_rule(struct sss_nic_rx_rule *rx_flow_rule) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:382:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 382 | void sss_nic_flush_rx_flow_rule(struct sss_nic_rx_rule *rx_flow_rule) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:397:6: error: no previous prototype for function 'sss_nic_flush_tcam' [-Werror,-Wmissing-prototypes] 397 | void sss_nic_flush_tcam(struct sss_nic_dev *nic_dev) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:397:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 397 | void sss_nic_flush_tcam(struct sss_nic_dev *nic_dev) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:797:5: error: no previous prototype for function 'sss_nic_ethtool_update_flow' [-Werror,-Wmissing-prototypes] 797 | int sss_nic_ethtool_update_flow(struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:797:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 797 | int sss_nic_ethtool_update_flow(struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:842:5: error: no previous prototype for function 'sss_nic_ethtool_delete_flow' [-Werror,-Wmissing-prototypes] 842 | int sss_nic_ethtool_delete_flow(struct sss_nic_dev *nic_dev, u32 location) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:842:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 842 | int sss_nic_ethtool_delete_flow(struct sss_nic_dev *nic_dev, u32 location) | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:864:5: error: no previous prototype for function 'sss_nic_ethtool_get_flow' [-Werror,-Wmissing-prototypes] 864 | int sss_nic_ethtool_get_flow(const struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:864:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 864 | int sss_nic_ethtool_get_flow(const struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:887:5: error: no previous prototype for function 'sss_nic_ethtool_get_all_flows' [-Werror,-Wmissing-prototypes] 887 | int sss_nic_ethtool_get_all_flows(const struct sss_nic_dev *nic_dev, | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:887:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 887 | int sss_nic_ethtool_get_all_flows(const struct sss_nic_dev *nic_dev, | ^ | static >> drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:905:6: error: no previous prototype for function 'sss_nic_validate_channel_setting_in_ntuple' [-Werror,-Wmissing-prototypes] 905 | bool sss_nic_validate_channel_setting_in_ntuple(const struct sss_nic_dev *nic_dev, u32 q_num) | ^ drivers/net/ethernet/3snic/sssnic/nic/sss_nic_ntuple.c:905:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 905 | bool sss_nic_validate_channel_setting_in_ntuple(const struct sss_nic_dev *nic_dev, u32 q_num) | ^ | static 14 errors generated. .. vim +/sss_nic_port_module_cable_plug +883 drivers/net/ethernet/3snic/sssnic/nic/sss_nic_main.c 882 > 883 void sss_nic_port_module_cable_plug(struct sss_nic_dev *nic_dev, void *event_data) 884 { 885 nicif_info(nic_dev, link, nic_dev->netdev, 886 "Port module event: Cable plugged\n"); 887 } 888 > 889 void sss_nic_port_module_cable_unplug(struct sss_nic_dev *nic_dev, void *event_data) 890 { 891 nicif_info(nic_dev, link, nic_dev->netdev, 892 "Port module event: Cable unplugged\n"); 893 } 894 > 895 void sss_nic_port_module_link_err(struct sss_nic_dev *nic_dev, void *event_data) 896 { 897 struct sss_nic_port_module_event *port_event = event_data; 898 enum link_err_type err_type = port_event->err_type; 899 900 nicif_info(nic_dev, link, nic_dev->netdev, 901 "Fail to link, err_type: 0x%x\n", err_type); 902 } 903 904 static void sss_nic_port_module_event_handler(struct sss_nic_dev *nic_dev, 905 struct sss_event_info *event) 906 { 907 struct sss_nic_port_module_event *port_event = (void *)event->event_data; 908 enum port_module_event_type type = port_event->type; 909 910 sss_nic_port_module_event_handler_t handler[SSSNIC_PORT_MODULE_MAX_EVENT] = { 911 sss_nic_port_module_cable_plug, 912 sss_nic_port_module_cable_unplug, 913 sss_nic_port_module_link_err, 914 }; 915 916 if (type >= SSSNIC_PORT_MODULE_MAX_EVENT) { 917 nicif_err(nic_dev, link, nic_dev->netdev, 918 "Unknown port module type %d\n", type); 919 return; 920 } 921 922 if (handler[type]) 923 handler[type](nic_dev, event->event_data); 924 } 925 926 static void sss_nic_link_down(struct sss_nic_dev *nic_dev, struct sss_event_info *event) 927 { 928 struct net_device *netdev = nic_dev->netdev; 929 930 if (!SSS_CHANNEL_RES_VALID(nic_dev) || 931 test_bit(SSSNIC_LP_TEST, &nic_dev->flags) || 932 test_bit(SSSNIC_FORCE_LINK_UP, &nic_dev->flags)) 933 return; 934 935 if (!netif_carrier_ok(netdev)) 936 return; 937 938 netif_carrier_off(netdev); 939 nic_dev->link_status = false; 940 nicif_info(nic_dev, link, netdev, "Link is down\n"); 941 } 942 943 static void sss_nic_link_up(struct sss_nic_dev *nic_dev, struct sss_event_info *event) 944 { 945 struct net_device *netdev = nic_dev->netdev; 946 947 if (!SSS_CHANNEL_RES_VALID(nic_dev) || 948 test_bit(SSSNIC_LP_TEST, &nic_dev->flags) || 949 test_bit(SSSNIC_FORCE_LINK_UP, &nic_dev->flags)) 950 return; 951 952 if (netif_carrier_ok(netdev)) 953 return; 954 955 netif_carrier_on(netdev); 956 nic_dev->link_status = true; 957 958 nicif_info(nic_dev, link, netdev, "Link is up\n"); 959 } 960 961 static void sss_nic_comm_fail_envet_handler(struct sss_nic_dev *nic_dev, 962 struct sss_event_info *event) 963 { 964 struct sss_fault_event *fault = (void *)event->event_data; 965 966 if (fault->fault_level == SSS_FAULT_LEVEL_SERIOUS_FLR && 967 fault->info.chip.func_id == sss_get_global_func_id(nic_dev->hwdev)) 968 sss_nic_link_down(nic_dev, event); 969 } 970 971 static void sss_nic_event_handler(struct sss_nic_dev *nic_dev, struct sss_event_info *event) 972 { 973 sss_nic_event_handler_t handler[SSSNIC_EVENT_MAX] = { 974 sss_nic_link_down, 975 sss_nic_link_up, 976 sss_nic_port_module_event_handler, 977 NULL, 978 }; 979 980 if (event->type >= SSSNIC_EVENT_MAX) 981 return; 982 983 if (handler[event->type]) 984 handler[event->type](nic_dev, event); 985 } 986 987 static void sss_nic_comm_event_handler(struct sss_nic_dev *nic_dev, 988 struct sss_event_info *event) 989 { 990 sss_nic_event_handler_t handler[SSS_EVENT_MAX] = { 991 sss_nic_link_down, 992 sss_nic_link_down, 993 sss_nic_comm_fail_envet_handler, 994 sss_nic_sriov_state_change, 995 NULL, 996 sss_nic_link_down, 997 }; 998 999 if (event->type >= SSS_EVENT_MAX) 1000 return; 1001 1002 if (handler[event->type]) 1003 handler[event->type](nic_dev, event); 1004 } 1005 1006 static void sss_nic_event(struct sss_hal_dev *uld_dev, void *adapter, 1007 struct sss_event_info *event) 1008 { 1009 struct sss_nic_dev *nic_dev = adapter; 1010 1011 if (!nic_dev || !event || !sss_support_nic(uld_dev->hwdev)) 1012 return; 1013 1014 if (event->service == SSS_EVENT_SRV_NIC) { 1015 sss_nic_event_handler(nic_dev, event); 1016 return; 1017 } 1018 1019 if (event->service == SSS_EVENT_SRV_COMM) { 1020 sss_nic_comm_event_handler(nic_dev, event); 1021 return; 1022 } 1023 } 1024 1025 struct sss_uld_info g_nic_uld_info = { 1026 .probe = sss_nic_probe, 1027 .remove = sss_nic_remove, 1028 .suspend = NULL, 1029 .resume = NULL, 1030 .event = sss_nic_event, 1031 .ioctl = sss_tool_ioctl, 1032 }; 1033 > 1034 struct sss_uld_info *get_nic_uld_info(void) 1035 { 1036 return &g_nic_uld_info; 1037 } 1038 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3563/3563] drivers/scsi/linkdata/ps3stor/ps3_qos.c:3023:6: error: no previous prototype for function 'ps3_hba_qos_waitq_poll'
by kernel test robot 21 Dec '25

21 Dec '25
Hi openeuler-ci-bot, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: 663a9a1c191fd26f1d8cb44edb6e0e50dd0536b2 [3563/3563] !14287 [OLK-6.6] SCSI: Support Linkdata HBA/RAID Controllers config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20251221/202512211148.JPQqoPy8-lkp@…) compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512211148.JPQqoPy8-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/202512211148.JPQqoPy8-lkp@intel.com/ All errors (new ones prefixed by >>): drivers/scsi/linkdata/ps3stor/ps3_qos.c:211:1: error: no previous prototype for function 'ps3_qos_cmd_waitq_get' [-Werror,-Wmissing-prototypes] 211 | ps3_qos_cmd_waitq_get(struct ps3_qos_tg_context *qos_tg_ctx, | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:210:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 210 | struct qos_wait_queue * | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:335:15: error: no previous prototype for function 'ps3_qos_vd_cmdword_get' [-Werror,-Wmissing-prototypes] 335 | unsigned char ps3_qos_vd_cmdword_get(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:335:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 335 | unsigned char ps3_qos_vd_cmdword_get(struct ps3_cmd *cmd) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:351:15: error: no previous prototype for function 'ps3_qos_exclusive_cmdword_get' [-Werror,-Wmissing-prototypes] 351 | unsigned char ps3_qos_exclusive_cmdword_get(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:351:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 351 | unsigned char ps3_qos_exclusive_cmdword_get(struct ps3_cmd *cmd) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:363:15: error: no previous prototype for function 'ps3_qos_tg_decision' [-Werror,-Wmissing-prototypes] 363 | unsigned char ps3_qos_tg_decision(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:363:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 363 | unsigned char ps3_qos_tg_decision(struct ps3_cmd *cmd) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:749:15: error: no previous prototype for function 'ps3_qos_all_pd_rc_get' [-Werror,-Wmissing-prototypes] 749 | unsigned char ps3_qos_all_pd_rc_get(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:749:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 749 | unsigned char ps3_qos_all_pd_rc_get(struct ps3_cmd *cmd) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:876:6: error: no previous prototype for function 'ps3_pd_quota_waitq_clear_all' [-Werror,-Wmissing-prototypes] 876 | void ps3_pd_quota_waitq_clear_all(struct ps3_qos_pd_mgr *qos_pd_mgr, | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:876:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 876 | void ps3_pd_quota_waitq_clear_all(struct ps3_qos_pd_mgr *qos_pd_mgr, | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:892:6: error: no previous prototype for function 'ps3_pd_quota_waitq_clean' [-Werror,-Wmissing-prototypes] 892 | void ps3_pd_quota_waitq_clean(struct ps3_qos_pd_mgr *qos_pd_mgr, | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:892:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 892 | void ps3_pd_quota_waitq_clean(struct ps3_qos_pd_mgr *qos_pd_mgr, | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:1058:6: error: no previous prototype for function 'ps3_qos_pd_waitq_ratio_update' [-Werror,-Wmissing-prototypes] 1058 | void ps3_qos_pd_waitq_ratio_update(struct ps3_qos_pd_mgr *qos_pd_mgr) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:1058:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 1058 | void ps3_qos_pd_waitq_ratio_update(struct ps3_qos_pd_mgr *qos_pd_mgr) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:2019:15: error: no previous prototype for function 'ps3_hba_qos_decision' [-Werror,-Wmissing-prototypes] 2019 | unsigned char ps3_hba_qos_decision(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:2019:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2019 | unsigned char ps3_hba_qos_decision(struct ps3_cmd *cmd) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:2040:6: error: no previous prototype for function 'ps3_hba_qos_waitq_notify' [-Werror,-Wmissing-prototypes] 2040 | void ps3_hba_qos_waitq_notify(struct ps3_instance *instance) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:2040:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2040 | void ps3_hba_qos_waitq_notify(struct ps3_instance *instance) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:2100:6: error: no previous prototype for function 'ps3_cmd_waitq_abort' [-Werror,-Wmissing-prototypes] 2100 | bool ps3_cmd_waitq_abort(struct ps3_cmd *aborted_cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:2100:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2100 | bool ps3_cmd_waitq_abort(struct ps3_cmd *aborted_cmd) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:2463:6: error: no previous prototype for function 'ps3_hba_qos_waitq_clear_all' [-Werror,-Wmissing-prototypes] 2463 | void ps3_hba_qos_waitq_clear_all(struct ps3_instance *instance, int resp_status) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:2463:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2463 | void ps3_hba_qos_waitq_clear_all(struct ps3_instance *instance, int resp_status) | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:2827:6: error: no previous prototype for function 'ps3_hba_qos_vd_init' [-Werror,-Wmissing-prototypes] 2827 | void ps3_hba_qos_vd_init(struct ps3_instance *instance, | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:2827:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2827 | void ps3_hba_qos_vd_init(struct ps3_instance *instance, | ^ | static drivers/scsi/linkdata/ps3stor/ps3_qos.c:2936:6: error: no previous prototype for function 'ps3_hba_qos_vd_reset' [-Werror,-Wmissing-prototypes] 2936 | void ps3_hba_qos_vd_reset(struct ps3_instance *instance, unsigned short disk_id) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:2936:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2936 | void ps3_hba_qos_vd_reset(struct ps3_instance *instance, unsigned short disk_id) | ^ | static >> drivers/scsi/linkdata/ps3stor/ps3_qos.c:3023:6: error: no previous prototype for function 'ps3_hba_qos_waitq_poll' [-Werror,-Wmissing-prototypes] 3023 | void ps3_hba_qos_waitq_poll(struct ps3_instance *instance) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:3023:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3023 | void ps3_hba_qos_waitq_poll(struct ps3_instance *instance) | ^ | static >> drivers/scsi/linkdata/ps3stor/ps3_qos.c:3279:15: error: no previous prototype for function 'ps3_raid_qos_decision' [-Werror,-Wmissing-prototypes] 3279 | unsigned char ps3_raid_qos_decision(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:3279:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3279 | unsigned char ps3_raid_qos_decision(struct ps3_cmd *cmd) | ^ | static >> drivers/scsi/linkdata/ps3stor/ps3_qos.c:3334:6: error: no previous prototype for function 'ps3_qos_mgrq_resend' [-Werror,-Wmissing-prototypes] 3334 | void ps3_qos_mgrq_resend(struct ps3_qos_softq_mgr *softq_mgr) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:3334:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3334 | void ps3_qos_mgrq_resend(struct ps3_qos_softq_mgr *softq_mgr) | ^ | static >> drivers/scsi/linkdata/ps3stor/ps3_qos.c:3478:6: error: no previous prototype for function 'ps3_raid_qos_waitq_notify' [-Werror,-Wmissing-prototypes] 3478 | void ps3_raid_qos_waitq_notify(struct ps3_instance *instance) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:3478:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3478 | void ps3_raid_qos_waitq_notify(struct ps3_instance *instance) | ^ | static >> drivers/scsi/linkdata/ps3stor/ps3_qos.c:3821:15: error: no previous prototype for function 'ps3_raid_qos_waitq_abort' [-Werror,-Wmissing-prototypes] 3821 | unsigned char ps3_raid_qos_waitq_abort(struct ps3_cmd *cmd) | ^ drivers/scsi/linkdata/ps3stor/ps3_qos.c:3821:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3821 | unsigned char ps3_raid_qos_waitq_abort(struct ps3_cmd *cmd) | ^ | static fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. -- >> drivers/scsi/linkdata/ps3stor/ps3_scsih.c:1958:1: error: unused function 'ps3_scsih_dev_id_get' [-Werror,-Wunused-function] 1958 | ps3_scsih_dev_id_get(const struct scsi_cmnd *s_cmd) | ^~~~~~~~~~~~~~~~~~~~ 1 error generated. -- >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:21:27: error: unused variable 'PS3_INTERRUPT_CMD_DISABLE_ALL_MASK' [-Werror,-Wunused-const-variable] 21 | static const unsigned int PS3_INTERRUPT_CMD_DISABLE_ALL_MASK = 0x02; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:22:27: error: unused variable 'PS3_INTERRUPT_CMD_ENABLE_MSIX' [-Werror,-Wunused-const-variable] 22 | static const unsigned int PS3_INTERRUPT_CMD_ENABLE_MSIX = 0x01; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:23:27: error: unused variable 'PS3_INTERRUPT_MASK_DISABLE' [-Werror,-Wunused-const-variable] 23 | static const unsigned int PS3_INTERRUPT_MASK_DISABLE = 0x00000002; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:24:27: error: unused variable 'PS3_INTERRUPT_STATUS_EXIST_IRQ' [-Werror,-Wunused-const-variable] 24 | static const unsigned int PS3_INTERRUPT_STATUS_EXIST_IRQ = 0x00000001; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:25:27: error: unused variable 'PS3_INTERRUPT_CLEAR_IRQ' [-Werror,-Wunused-const-variable] 25 | static const unsigned int PS3_INTERRUPT_CLEAR_IRQ = 0x00000001; | ^~~~~~~~~~~~~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:27:27: error: unused variable 'PS3_SSD_IOPS_MSIX_VECTORS' [-Werror,-Wunused-const-variable] 27 | static const unsigned int PS3_SSD_IOPS_MSIX_VECTORS = 8; | ^~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/ps3_irq.c:28:27: error: unused variable 'PS3_HDD_IOPS_MSIX_VECTORS' [-Werror,-Wunused-const-variable] 28 | static const unsigned int PS3_HDD_IOPS_MSIX_VECTORS = 8; | ^~~~~~~~~~~~~~~~~~~~~~~~~ 7 errors generated. -- >> drivers/scsi/linkdata/ps3stor/./linux/ps3_driver_log.c:41:19: error: unused function 'time_for_log' [-Werror,-Wunused-function] 41 | static inline int time_for_log(char *buff, int buf_len) | ^~~~~~~~~~~~ >> drivers/scsi/linkdata/ps3stor/./linux/ps3_driver_log.c:65:19: error: unused function 'time_for_file_name' [-Werror,-Wunused-function] 65 | static inline int time_for_file_name(char *buff, int buf_len) | ^~~~~~~~~~~~~~~~~~ 2 errors generated. vim +/ps3_hba_qos_waitq_poll +3023 drivers/scsi/linkdata/ps3stor/ps3_qos.c 97a2bb6ece556f liujie_answer 2024-12-24 2935 97a2bb6ece556f liujie_answer 2024-12-24 @2936 void ps3_hba_qos_vd_reset(struct ps3_instance *instance, unsigned short disk_id) 97a2bb6ece556f liujie_answer 2024-12-24 2937 { 97a2bb6ece556f liujie_answer 2024-12-24 2938 struct ps3_qos_vd_mgr *qos_vd_mgr = NULL; 97a2bb6ece556f liujie_answer 2024-12-24 2939 97a2bb6ece556f liujie_answer 2024-12-24 2940 qos_vd_mgr = ps3_qos_vd_mgr_get_by_id(instance, disk_id); 97a2bb6ece556f liujie_answer 2024-12-24 2941 qos_vd_mgr->valid = PS3_FALSE; 97a2bb6ece556f liujie_answer 2024-12-24 2942 } 97a2bb6ece556f liujie_answer 2024-12-24 2943 97a2bb6ece556f liujie_answer 2024-12-24 2944 void ps3_qos_vd_reset(struct ps3_instance *instance, unsigned short disk_id) 97a2bb6ece556f liujie_answer 2024-12-24 2945 { 97a2bb6ece556f liujie_answer 2024-12-24 2946 if (!PS3_QOS_INITED(instance)) 97a2bb6ece556f liujie_answer 2024-12-24 2947 return; 97a2bb6ece556f liujie_answer 2024-12-24 2948 97a2bb6ece556f liujie_answer 2024-12-24 2949 if (instance->qos_context.opts.qos_vd_reset) 97a2bb6ece556f liujie_answer 2024-12-24 2950 instance->qos_context.opts.qos_vd_reset(instance, disk_id); 97a2bb6ece556f liujie_answer 2024-12-24 2951 } 97a2bb6ece556f liujie_answer 2024-12-24 2952 97a2bb6ece556f liujie_answer 2024-12-24 2953 static void ps3_qos_pd_notify_timeout(struct ps3_instance *instance) 97a2bb6ece556f liujie_answer 2024-12-24 2954 { 97a2bb6ece556f liujie_answer 2024-12-24 2955 struct ps3_qos_pd_context *qos_pd_ctx = NULL; 97a2bb6ece556f liujie_answer 2024-12-24 2956 unsigned short i = 0; 97a2bb6ece556f liujie_answer 2024-12-24 2957 struct ps3_qos_pd_mgr *qos_pd_mgr = NULL; 97a2bb6ece556f liujie_answer 2024-12-24 2958 unsigned long timeout_jiffies = 0; 97a2bb6ece556f liujie_answer 2024-12-24 2959 97a2bb6ece556f liujie_answer 2024-12-24 2960 qos_pd_ctx = &instance->qos_context.pd_ctx; 97a2bb6ece556f liujie_answer 2024-12-24 2961 for (i = 1; i <= instance->qos_context.max_pd_count; i++) { 97a2bb6ece556f liujie_answer 2024-12-24 2962 qos_pd_mgr = ps3_qos_pd_mgr_get(instance, i); 97a2bb6ece556f liujie_answer 2024-12-24 2963 timeout_jiffies = qos_pd_mgr->last_sched_jiffies + 97a2bb6ece556f liujie_answer 2024-12-24 2964 PS3_QOS_WAITQ_TIMEOUT * HZ; 97a2bb6ece556f liujie_answer 2024-12-24 2965 if (time_after(jiffies, timeout_jiffies)) { 97a2bb6ece556f liujie_answer 2024-12-24 2966 if (ps3_qos_single_pd_notify(qos_pd_ctx, qos_pd_mgr)) { 97a2bb6ece556f liujie_answer 2024-12-24 2967 LOG_INFO( 97a2bb6ece556f liujie_answer 2024-12-24 2968 "awake qos pd quota waitq by poll. host_no:%u vid:%u pid:%u\n", 97a2bb6ece556f liujie_answer 2024-12-24 2969 PS3_HOST(instance), qos_pd_mgr->vd_id, 97a2bb6ece556f liujie_answer 2024-12-24 2970 qos_pd_mgr->disk_id); 97a2bb6ece556f liujie_answer 2024-12-24 2971 } 97a2bb6ece556f liujie_answer 2024-12-24 2972 } 97a2bb6ece556f liujie_answer 2024-12-24 2973 } 97a2bb6ece556f liujie_answer 2024-12-24 2974 } 97a2bb6ece556f liujie_answer 2024-12-24 2975 97a2bb6ece556f liujie_answer 2024-12-24 2976 static unsigned char ps3_qos_vd_notify_timeout(struct ps3_instance *instance) 97a2bb6ece556f liujie_answer 2024-12-24 2977 { 97a2bb6ece556f liujie_answer 2024-12-24 2978 struct ps3_qos_vd_context *qos_vd_ctx = NULL; 97a2bb6ece556f liujie_answer 2024-12-24 2979 unsigned short i = 0; 97a2bb6ece556f liujie_answer 2024-12-24 2980 struct ps3_qos_vd_mgr *qos_vd_mgr = NULL; 97a2bb6ece556f liujie_answer 2024-12-24 2981 unsigned long timeout_jiffies = 0; 97a2bb6ece556f liujie_answer 2024-12-24 2982 unsigned char notified = PS3_FALSE; 97a2bb6ece556f liujie_answer 2024-12-24 2983 97a2bb6ece556f liujie_answer 2024-12-24 2984 for (i = 1; i <= instance->qos_context.max_vd_count; i++) { 97a2bb6ece556f liujie_answer 2024-12-24 2985 qos_vd_ctx = &instance->qos_context.vd_ctx; 97a2bb6ece556f liujie_answer 2024-12-24 2986 qos_vd_mgr = &qos_vd_ctx->qos_vd_mgrs[i]; 97a2bb6ece556f liujie_answer 2024-12-24 2987 timeout_jiffies = qos_vd_mgr->last_sched_jiffies + 97a2bb6ece556f liujie_answer 2024-12-24 2988 PS3_QOS_WAITQ_TIMEOUT * HZ; 97a2bb6ece556f liujie_answer 2024-12-24 2989 if (time_after(jiffies, timeout_jiffies)) { 97a2bb6ece556f liujie_answer 2024-12-24 2990 if (ps3_qos_single_vd_notify(qos_vd_ctx, qos_vd_mgr)) { 97a2bb6ece556f liujie_answer 2024-12-24 2991 notified = PS3_TRUE; 97a2bb6ece556f liujie_answer 2024-12-24 2992 LOG_INFO( 97a2bb6ece556f liujie_answer 2024-12-24 2993 "awake qos vd quota waitq by poll. host_no:%u vid:%u\n", 97a2bb6ece556f liujie_answer 2024-12-24 2994 PS3_HOST(instance), qos_vd_mgr->id); 97a2bb6ece556f liujie_answer 2024-12-24 2995 } 97a2bb6ece556f liujie_answer 2024-12-24 2996 } 97a2bb6ece556f liujie_answer 2024-12-24 2997 } 97a2bb6ece556f liujie_answer 2024-12-24 2998 97a2bb6ece556f liujie_answer 2024-12-24 2999 return notified; 97a2bb6ece556f liujie_answer 2024-12-24 3000 } 97a2bb6ece556f liujie_answer 2024-12-24 3001 97a2bb6ece556f liujie_answer 2024-12-24 3002 static unsigned char ps3_qos_tg_notify_timeout(struct ps3_instance *instance) 97a2bb6ece556f liujie_answer 2024-12-24 3003 { 97a2bb6ece556f liujie_answer 2024-12-24 3004 struct ps3_qos_tg_context *qos_tg_ctx = NULL; 97a2bb6ece556f liujie_answer 2024-12-24 3005 unsigned char notified = PS3_FALSE; 97a2bb6ece556f liujie_answer 2024-12-24 3006 unsigned long timeout_jiffies = 0; 97a2bb6ece556f liujie_answer 2024-12-24 3007 97a2bb6ece556f liujie_answer 2024-12-24 3008 qos_tg_ctx = &instance->qos_context.tg_ctx; 97a2bb6ece556f liujie_answer 2024-12-24 3009 timeout_jiffies = 97a2bb6ece556f liujie_answer 2024-12-24 3010 qos_tg_ctx->last_sched_jiffies + PS3_QOS_WAITQ_TIMEOUT * HZ; 97a2bb6ece556f liujie_answer 2024-12-24 3011 if (qos_tg_ctx->total_wait_cmd_cnt && 97a2bb6ece556f liujie_answer 2024-12-24 3012 ps3_qos_tag_rsc_available(instance) && 97a2bb6ece556f liujie_answer 2024-12-24 3013 time_after(jiffies, timeout_jiffies)) { 97a2bb6ece556f liujie_answer 2024-12-24 3014 queue_work(qos_tg_ctx->work_queue, &qos_tg_ctx->resend_work); 97a2bb6ece556f liujie_answer 2024-12-24 3015 notified = PS3_TRUE; 97a2bb6ece556f liujie_answer 2024-12-24 3016 LOG_INFO("awake qos cmd waitq by poll. host_no:%u\n", 97a2bb6ece556f liujie_answer 2024-12-24 3017 PS3_HOST(instance)); 97a2bb6ece556f liujie_answer 2024-12-24 3018 } 97a2bb6ece556f liujie_answer 2024-12-24 3019 97a2bb6ece556f liujie_answer 2024-12-24 3020 return notified; 97a2bb6ece556f liujie_answer 2024-12-24 3021 } 97a2bb6ece556f liujie_answer 2024-12-24 3022 97a2bb6ece556f liujie_answer 2024-12-24 @3023 void ps3_hba_qos_waitq_poll(struct ps3_instance *instance) 97a2bb6ece556f liujie_answer 2024-12-24 3024 { 97a2bb6ece556f liujie_answer 2024-12-24 3025 if (!ps3_qos_tg_notify_timeout(instance)) { 97a2bb6ece556f liujie_answer 2024-12-24 3026 if (!ps3_qos_vd_notify_timeout(instance)) 97a2bb6ece556f liujie_answer 2024-12-24 3027 ps3_qos_pd_notify_timeout(instance); 97a2bb6ece556f liujie_answer 2024-12-24 3028 } 97a2bb6ece556f liujie_answer 2024-12-24 3029 } 97a2bb6ece556f liujie_answer 2024-12-24 3030 :::::: The code at line 3023 was first introduced by commit :::::: 97a2bb6ece556f3882263ee8df2b77f10c511311 SCSI: Linkdata: Supports Linkdata HBA/RAID Controllers :::::: TO: liujie_answer <liujie5(a)linkdatatechnology.com> :::::: CC: liujie_answer <liujie5(a)linkdatatechnology.com> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3557/3557] drivers/irqchip/irq-gic-phytium-2500.c:1216:78: sparse: sparse: dubious: !x | !y
by kernel test robot 21 Dec '25

21 Dec '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: 792b82446538ed840a6e23b89673ce21564702bd [3557/3557] Fix gic support for Phytium S2500 config: arm64-randconfig-r132-20251218 (https://download.01.org/0day-ci/archive/20251221/202512210813.VozNt0tS-lkp@…) compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512210813.VozNt0tS-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/202512210813.VozNt0tS-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) >> drivers/irqchip/irq-gic-phytium-2500.c:1216:78: sparse: sparse: dubious: !x | !y >> drivers/irqchip/irq-gic-phytium-2500.c:302:29: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:327:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:454:24: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:479:24: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:266:24: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:767:24: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:1155:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:1156:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:1157:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:1409:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500.c:266:24: sparse: sparse: dereference of noderef expression -- >> drivers/irqchip/irq-gic-phytium-2500-its.c:1479:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:1479:9: sparse: expected struct raw_spinlock [usertype] *lock drivers/irqchip/irq-gic-phytium-2500-its.c:1479:9: sparse: got struct raw_spinlock [noderef] __percpu * drivers/irqchip/irq-gic-phytium-2500-its.c:1485:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:1485:9: sparse: expected struct raw_spinlock [usertype] *lock drivers/irqchip/irq-gic-phytium-2500-its.c:1485:9: sparse: got struct raw_spinlock [noderef] __percpu * >> drivers/irqchip/irq-gic-phytium-2500-its.c:2934:45: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct cpumask [usertype] **mask @@ got struct cpumask [usertype] *[noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:2934:45: sparse: expected struct cpumask [usertype] **mask drivers/irqchip/irq-gic-phytium-2500-its.c:2934:45: sparse: got struct cpumask [usertype] *[noderef] __percpu * drivers/irqchip/irq-gic-phytium-2500-its.c:4281:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:4281:9: sparse: expected struct raw_spinlock [usertype] *lock drivers/irqchip/irq-gic-phytium-2500-its.c:4281:9: sparse: got struct raw_spinlock [noderef] __percpu * drivers/irqchip/irq-gic-phytium-2500-its.c:4286:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:4286:9: sparse: expected struct raw_spinlock [usertype] *lock drivers/irqchip/irq-gic-phytium-2500-its.c:4286:9: sparse: got struct raw_spinlock [noderef] __percpu * drivers/irqchip/irq-gic-phytium-2500-its.c:4421:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:4421:9: sparse: expected struct raw_spinlock [usertype] *lock drivers/irqchip/irq-gic-phytium-2500-its.c:4421:9: sparse: got struct raw_spinlock [noderef] __percpu * drivers/irqchip/irq-gic-phytium-2500-its.c:4439:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct raw_spinlock [usertype] *lock @@ got struct raw_spinlock [noderef] __percpu * @@ drivers/irqchip/irq-gic-phytium-2500-its.c:4439:9: sparse: expected struct raw_spinlock [usertype] *lock drivers/irqchip/irq-gic-phytium-2500-its.c:4439:9: sparse: got struct raw_spinlock [noderef] __percpu * drivers/irqchip/irq-gic-phytium-2500-its.c: note: in included file (through include/linux/spinlock.h, include/linux/mmzone.h, include/linux/gfp.h, ...): include/linux/spinlock_api_smp.h:111:9: sparse: sparse: context imbalance in 'vpe_to_cpuid_lock' - wrong count at exit drivers/irqchip/irq-gic-phytium-2500-its.c:284:13: sparse: sparse: context imbalance in 'vpe_to_cpuid_unlock' - unexpected unlock >> drivers/irqchip/irq-gic-phytium-2500-its.c:1481:18: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2337:23: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2337:23: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2751:15: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2751:15: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2772:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2806:15: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2806:15: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2810:38: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2828:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2828:49: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2829:25: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2839:30: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2882:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2909:35: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2938:9: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:2939:14: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3009:9: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3021:45: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3021:45: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3023:9: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3078:15: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3078:15: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3093:29: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3093:29: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3118:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3156:31: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3161:13: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3180:17: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3185:21: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3244:43: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3279:9: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3280:9: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3318:26: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3321:26: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3321:26: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3919:26: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3968:13: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3969:36: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3969:36: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3984:35: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:3998:35: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:4030:35: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:4140:26: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:4220:35: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:4235:35: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:4282:18: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:4422:16: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:5309:19: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:5309:19: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:5314:31: sparse: sparse: dereference of noderef expression drivers/irqchip/irq-gic-phytium-2500-its.c:5334:14: sparse: sparse: dereference of noderef expression vim +1216 drivers/irqchip/irq-gic-phytium-2500.c ade50f9f855e6a Li Yuting 2024-01-17 1181 ade50f9f855e6a Li Yuting 2024-01-17 1182 static int __gic_update_rdist_properties(struct redist_region *region, ade50f9f855e6a Li Yuting 2024-01-17 1183 void __iomem *ptr) ade50f9f855e6a Li Yuting 2024-01-17 1184 { ade50f9f855e6a Li Yuting 2024-01-17 1185 u64 typer = gic_read_typer(ptr + GICR_TYPER); ade50f9f855e6a Li Yuting 2024-01-17 1186 u32 ctlr = readl_relaxed(ptr + GICR_CTLR); ade50f9f855e6a Li Yuting 2024-01-17 1187 ade50f9f855e6a Li Yuting 2024-01-17 1188 /* Boot-time cleanup */ ade50f9f855e6a Li Yuting 2024-01-17 1189 if ((typer & GICR_TYPER_VLPIS) && (typer & GICR_TYPER_RVPEID)) { ade50f9f855e6a Li Yuting 2024-01-17 1190 u64 val; ade50f9f855e6a Li Yuting 2024-01-17 1191 ade50f9f855e6a Li Yuting 2024-01-17 1192 /* Deactivate any present vPE */ ade50f9f855e6a Li Yuting 2024-01-17 1193 val = gicr_read_vpendbaser(ptr + SZ_128K + GICR_VPENDBASER); ade50f9f855e6a Li Yuting 2024-01-17 1194 if (val & GICR_VPENDBASER_Valid) ade50f9f855e6a Li Yuting 2024-01-17 1195 gicr_write_vpendbaser(GICR_VPENDBASER_PendingLast, ade50f9f855e6a Li Yuting 2024-01-17 1196 ptr + SZ_128K + GICR_VPENDBASER); ade50f9f855e6a Li Yuting 2024-01-17 1197 ade50f9f855e6a Li Yuting 2024-01-17 1198 /* Mark the VPE table as invalid */ ade50f9f855e6a Li Yuting 2024-01-17 1199 val = gicr_read_vpropbaser(ptr + SZ_128K + GICR_VPROPBASER); ade50f9f855e6a Li Yuting 2024-01-17 1200 val &= ~GICR_VPROPBASER_4_1_VALID; ade50f9f855e6a Li Yuting 2024-01-17 1201 gicr_write_vpropbaser(val, ptr + SZ_128K + GICR_VPROPBASER); ade50f9f855e6a Li Yuting 2024-01-17 1202 } ade50f9f855e6a Li Yuting 2024-01-17 1203 ade50f9f855e6a Li Yuting 2024-01-17 1204 gic_data.rdists.has_vlpis &= !!(typer & GICR_TYPER_VLPIS); ade50f9f855e6a Li Yuting 2024-01-17 1205 ade50f9f855e6a Li Yuting 2024-01-17 1206 /* ade50f9f855e6a Li Yuting 2024-01-17 1207 * TYPER.RVPEID implies some form of DirectLPI, no matter what the ade50f9f855e6a Li Yuting 2024-01-17 1208 * doc says... :-/ And CTLR.IR implies another subset of DirectLPI ade50f9f855e6a Li Yuting 2024-01-17 1209 * that the ITS driver can make use of for LPIs (and not VLPIs). ade50f9f855e6a Li Yuting 2024-01-17 1210 * ade50f9f855e6a Li Yuting 2024-01-17 1211 * These are 3 different ways to express the same thing, depending ade50f9f855e6a Li Yuting 2024-01-17 1212 * on the revision of the architecture and its relaxations over ade50f9f855e6a Li Yuting 2024-01-17 1213 * time. Just group them under the 'direct_lpi' banner. ade50f9f855e6a Li Yuting 2024-01-17 1214 */ ade50f9f855e6a Li Yuting 2024-01-17 1215 gic_data.rdists.has_rvpeid &= !!(typer & GICR_TYPER_RVPEID); ade50f9f855e6a Li Yuting 2024-01-17 @1216 gic_data.rdists.has_direct_lpi &= (!!(typer & GICR_TYPER_DirectLPIS) | ade50f9f855e6a Li Yuting 2024-01-17 1217 !!(ctlr & GICR_CTLR_IR) | ade50f9f855e6a Li Yuting 2024-01-17 1218 gic_data.rdists.has_rvpeid); ade50f9f855e6a Li Yuting 2024-01-17 1219 gic_data.rdists.has_vpend_valid_dirty &= !!(typer & GICR_TYPER_DIRTY); ade50f9f855e6a Li Yuting 2024-01-17 1220 ade50f9f855e6a Li Yuting 2024-01-17 1221 /* Detect non-sensical configurations */ ade50f9f855e6a Li Yuting 2024-01-17 1222 if (WARN_ON_ONCE(gic_data.rdists.has_rvpeid && !gic_data.rdists.has_vlpis)) { ade50f9f855e6a Li Yuting 2024-01-17 1223 gic_data.rdists.has_direct_lpi = false; ade50f9f855e6a Li Yuting 2024-01-17 1224 gic_data.rdists.has_vlpis = false; ade50f9f855e6a Li Yuting 2024-01-17 1225 gic_data.rdists.has_rvpeid = false; ade50f9f855e6a Li Yuting 2024-01-17 1226 } ade50f9f855e6a Li Yuting 2024-01-17 1227 ade50f9f855e6a Li Yuting 2024-01-17 1228 gic_data.ppi_nr = min(GICR_TYPER_NR_PPIS(typer), gic_data.ppi_nr); ade50f9f855e6a Li Yuting 2024-01-17 1229 ade50f9f855e6a Li Yuting 2024-01-17 1230 return 1; ade50f9f855e6a Li Yuting 2024-01-17 1231 } ade50f9f855e6a Li Yuting 2024-01-17 1232 :::::: The code at line 1216 was first introduced by commit :::::: ade50f9f855e6afd85e65b6b036a1bb948d4dfff Add gic support for Phytium S2500 :::::: TO: Li Yuting <liyuting2071(a)phytium.com.cn> :::::: CC: Li Yuting <liyuting2071(a)phytium.com.cn> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3544/3544] arch/arm64/kvm/arm.c:569:5: warning: no previous prototype for 'kvm_arch_rec_init'
by kernel test robot 21 Dec '25

21 Dec '25
Hi Hou, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: fa36fa3469d2461c1887e823371059401941ae8a [3544/3544] CCA: Fix cca kabi conflict config: arm64-defconfig (https://download.01.org/0day-ci/archive/20251221/202512210513.adq7k77G-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512210513.adq7k77G-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/202512210513.adq7k77G-lkp@intel.com/ All warnings (new ones prefixed by >>): >> arch/arm64/kvm/arm.c:569:5: warning: no previous prototype for 'kvm_arch_rec_init' [-Wmissing-prototypes] 569 | int kvm_arch_rec_init(struct kvm_vcpu_arch *vcpu_arch) | ^~~~~~~~~~~~~~~~~ In file included from arch/arm64/kvm/arm.c:52: arch/arm64/kvm/hisilicon/hisi_virt.h:116:13: warning: 'hisi_ipiv_enable_per_vm' defined but not used [-Wunused-function] 116 | static void hisi_ipiv_enable_per_vm(struct kvm_vcpu *vcpu) {} | ^~~~~~~~~~~~~~~~~~~~~~~ arch/arm64/kvm/hisilicon/hisi_virt.h:112:13: warning: 'hisi_ipiv_supported_per_vm' defined but not used [-Wunused-function] 112 | static bool hisi_ipiv_supported_per_vm(struct kvm_vcpu *vcpu) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/kvm_arch_rec_init +569 arch/arm64/kvm/arm.c 568 > 569 int kvm_arch_rec_init(struct kvm_vcpu_arch *vcpu_arch) 570 { 571 struct realm_rec *rec; 572 573 rec = kzalloc(sizeof(struct realm_rec), GFP_KERNEL_ACCOUNT); 574 if (!rec) 575 return -ENOMEM; 576 rec->mpidr = INVALID_HWID; 577 vcpu_arch->rec = rec; 578 return 0; 579 } 580 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 1/1] kismet: WARNING: unmet direct dependencies detected for RESCTRL_FS when selected by ARM64_MPAM
by kernel test robot 21 Dec '25

21 Dec '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: c5a4bf91167c714de74c47f5cd6d888c66e9860d [1/1] arm64: mpam: Select ARCH_HAS_CPU_RESCTRL config: arm64-kismet-CONFIG_RESCTRL_FS-CONFIG_ARM64_MPAM-0-0 (https://download.01.org/0day-ci/archive/20251220/202512202217.vP7L1WOs-lkp@…) reproduce: (https://download.01.org/0day-ci/archive/20251220/202512202217.vP7L1WOs-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/202512202217.vP7L1WOs-lkp@intel.com/ kismet warnings: (new ones prefixed by >>) >> kismet: WARNING: unmet direct dependencies detected for RESCTRL_FS when selected by ARM64_MPAM WARNING: unmet direct dependencies detected for RESCTRL_FS Depends on [n]: MISC_FILESYSTEMS [=n] && ARCH_HAS_CPU_RESCTRL [=y] Selected by [y]: - ARM64_MPAM [=y] -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3542/3542] drivers/i2c/busses/i2c-zhaoxin.c:176:5: warning: no previous prototype for function 'zxi2c_fifo_irq_xfer'
by kernel test robot 21 Dec '25

21 Dec '25
Hi leoliu-oc, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: 07a6747f952bd8a1ee87d6f5d74448c64fbb152e [3542/3542] i2c: zhaoxin: Add support for Zhaoxin I2C controller config: x86_64-randconfig-012-20251215 (https://download.01.org/0day-ci/archive/20251221/202512211025.4cSwOTdS-lkp@…) compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512211025.4cSwOTdS-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/202512211025.4cSwOTdS-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from drivers/i2c/busses/i2c-zhaoxin.c:12: In file included from include/linux/i2c.h:19: In file included from include/linux/regulator/consumer.h:35: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:20: In file included from include/linux/mm.h:2235: 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_" | ~~~~~~~~~~~ ^ ~~~ >> drivers/i2c/busses/i2c-zhaoxin.c:176:5: warning: no previous prototype for function 'zxi2c_fifo_irq_xfer' [-Wmissing-prototypes] 176 | int zxi2c_fifo_irq_xfer(struct zxi2c *i2c, bool irq) | ^ drivers/i2c/busses/i2c-zhaoxin.c:176:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 176 | int zxi2c_fifo_irq_xfer(struct zxi2c *i2c, bool irq) | ^ | static >> drivers/i2c/busses/i2c-zhaoxin.c:314:5: warning: no previous prototype for function 'zxi2c_xfer' [-Wmissing-prototypes] 314 | int zxi2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) | ^ drivers/i2c/busses/i2c-zhaoxin.c:314:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 314 | int zxi2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) | ^ | static drivers/i2c/busses/i2c-zhaoxin.c:540:12: warning: unused function 'zxi2c_resume' [-Wunused-function] 540 | static int zxi2c_resume(struct device *dev) | ^~~~~~~~~~~~ 4 warnings generated. vim +/zxi2c_fifo_irq_xfer +176 drivers/i2c/busses/i2c-zhaoxin.c 174 175 /* 'irq == true' means in interrupt context */ > 176 int zxi2c_fifo_irq_xfer(struct zxi2c *i2c, bool irq) 177 { 178 u16 i; 179 u8 tmp; 180 struct i2c_msg *msg = i2c->msg; 181 void __iomem *base = i2c->base; 182 bool read = !!(msg->flags & I2C_M_RD); 183 184 if (irq) { 185 /* get the received data */ 186 if (read) 187 for (i = 0; i < i2c->xfer_len; i++) 188 msg->buf[i2c->xfered_len + i] = ioread8(base + ZXI2C_REG_HRDR); 189 190 i2c->xfered_len += i2c->xfer_len; 191 if (i2c->xfered_len == msg->len) 192 return 1; 193 } 194 195 /* reset fifo buffer */ 196 tmp = ioread8(base + ZXI2C_REG_HCR); 197 iowrite8(tmp | ZXI2C_HCR_RST_FIFO, base + ZXI2C_REG_HCR); 198 199 /* set xfer len */ 200 i2c->xfer_len = min_t(u16, msg->len - i2c->xfered_len, ZXI2C_FIFO_SIZE); 201 if (read) { 202 iowrite8(i2c->xfer_len - 1, base + ZXI2C_REG_HRLR); 203 } else { 204 iowrite8(i2c->xfer_len - 1, base + ZXI2C_REG_HTLR); 205 /* set write data */ 206 for (i = 0; i < i2c->xfer_len; i++) 207 iowrite8(msg->buf[i2c->xfered_len + i], base + ZXI2C_REG_HTDR); 208 } 209 210 /* prepare to stop transmission */ 211 if (i2c->hrv && msg->len == (i2c->xfered_len + i2c->xfer_len)) { 212 tmp = ioread8(base + ZXI2C_REG_CR); 213 tmp |= read ? ZXI2C_CR_RX_END : ZXI2C_CR_TX_END; 214 iowrite8(tmp, base + ZXI2C_REG_CR); 215 } 216 217 if (irq) { 218 /* continue transmission */ 219 tmp = ioread8(base + ZXI2C_REG_CR); 220 iowrite8(tmp |= ZXI2C_CR_CPU_RDY, base + ZXI2C_REG_CR); 221 } else { 222 u16 tcr_val = i2c->tcr; 223 224 /* start transmission */ 225 tcr_val |= read ? ZXI2C_TCR_READ : 0; 226 writew(tcr_val | msg->addr, base + ZXI2C_REG_TCR); 227 } 228 229 return 0; 230 } 231 232 static irqreturn_t zxi2c_isr(int irq, void *data) 233 { 234 struct zxi2c *i2c = data; 235 void __iomem *base = i2c->base; 236 u8 status; 237 238 /* save the status and write-clear it */ 239 status = readw(base + ZXI2C_REG_ISR); 240 if (!status) 241 return IRQ_NONE; 242 243 writew(status, base + ZXI2C_REG_ISR); 244 245 i2c->ret = 0; 246 if (status & ZXI2C_ISR_NACK_ADDR) 247 i2c->ret = -EIO; 248 249 if (!i2c->ret) { 250 if (i2c->mode == ZXI2C_BYTE_MODE) 251 i2c->ret = zxi2c_irq_xfer(i2c); 252 else 253 i2c->ret = zxi2c_fifo_irq_xfer(i2c, true); 254 } 255 256 if (i2c->ret) 257 complete(&i2c->complete); 258 259 return IRQ_HANDLED; 260 } 261 262 static int zxi2c_write(struct zxi2c *i2c, struct i2c_msg *msg, int last) 263 { 264 u16 tcr_val = i2c->tcr; 265 void __iomem *base = i2c->base; 266 267 i2c->last = last; 268 269 writew(msg->buf[0] & 0xFF, base + ZXI2C_REG_CDR); 270 271 reinit_completion(&i2c->complete); 272 273 tcr_val |= msg->addr & 0x7f; 274 275 writew(tcr_val, base + ZXI2C_REG_TCR); 276 277 if (!wait_for_completion_timeout(&i2c->complete, ZXI2C_TIMEOUT)) 278 return -ETIMEDOUT; 279 280 return i2c->ret; 281 } 282 283 static int zxi2c_read(struct zxi2c *i2c, struct i2c_msg *msg, bool first) 284 { 285 u16 val, tcr_val = i2c->tcr; 286 void __iomem *base = i2c->base; 287 288 val = readw(base + ZXI2C_REG_CR); 289 val &= ~(ZXI2C_CR_TX_END | ZXI2C_CR_RX_END); 290 291 if (msg->len == 1) 292 val |= ZXI2C_CR_RX_END; 293 294 writew(val, base + ZXI2C_REG_CR); 295 296 reinit_completion(&i2c->complete); 297 298 tcr_val |= ZXI2C_TCR_READ | (msg->addr & 0x7f); 299 300 writew(tcr_val, base + ZXI2C_REG_TCR); 301 302 if (!first) { 303 val = readw(base + ZXI2C_REG_CR); 304 val |= ZXI2C_CR_CPU_RDY; 305 writew(val, base + ZXI2C_REG_CR); 306 } 307 308 if (!wait_for_completion_timeout(&i2c->complete, ZXI2C_TIMEOUT)) 309 return -ETIMEDOUT; 310 311 return i2c->ret; 312 } 313 > 314 int zxi2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) 315 { 316 struct i2c_msg *msg; 317 int i; 318 int ret = 0; 319 struct zxi2c *i2c = i2c_get_adapdata(adap); 320 321 i2c->mode = ZXI2C_BYTE_MODE; 322 for (i = 0; ret >= 0 && i < num; i++) { 323 i2c->msg = msg = &msgs[i]; 324 i2c->xfered_len = 0; 325 if (msg->len == 0) 326 return -EIO; 327 328 if (msg->flags & I2C_M_RD) 329 ret = zxi2c_read(i2c, msg, i == 0); 330 else 331 ret = zxi2c_write(i2c, msg, (i + 1) == num); 332 } 333 334 return (ret < 0) ? ret : i; 335 } 336 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 3418/3418] drivers/net/ethernet/linkdata/sxe/sxepf/sxe_main.c:48: warning: Excess function parameter 'file' description in 'SXE_MSG_LEVEL_DEFAULT'
by kernel test robot 21 Dec '25

21 Dec '25
Hi liujie_answer, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 1588d318a9e388d05b6cf5e2a63134c8beb6a355 commit: 3c27aa8f615da8e36e1dc802839c98702187757c [3418/3418] Linkdata:net:fix sxe compile errors 'sxe_resume' defined but not used config: arm64-randconfig-001-20251217 (https://download.01.org/0day-ci/archive/20251221/202512210525.8hRRLO09-lkp@…) compiler: aarch64-linux-gcc (GCC) 7.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512210525.8hRRLO09-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/202512210525.8hRRLO09-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_main.c:48: warning: Excess function parameter 'file' description in 'SXE_MSG_LEVEL_DEFAULT' >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_main.c:48: warning: Excess function parameter 'author' description in 'SXE_MSG_LEVEL_DEFAULT' >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_main.c:48: warning: Excess function parameter 'date' description in 'SXE_MSG_LEVEL_DEFAULT' vim +48 drivers/net/ethernet/linkdata/sxe/sxepf/sxe_main.c 8cee206b555824 liujie_answer 2025-04-01 47 8cee206b555824 liujie_answer 2025-04-01 @48 #define SXE_MSG_LEVEL_DEFAULT (NETIF_MSG_DRV | NETIF_MSG_PROBE | NETIF_MSG_LINK) 8cee206b555824 liujie_answer 2025-04-01 49 :::::: The code at line 48 was first introduced by commit :::::: 8cee206b5558245197158bd20895f95cc28d8468 Ethernet: Linkdata: Supports Linkdata ethernet Controllers :::::: TO: liujie_answer <liujie5(a)linkdatatechnology.com> :::::: CC: liujie_answer <liujie5(a)linkdatatechnology.com> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3544/3544] arch/arm64/kvm/cca_base.c:52:6: warning: no previous prototype for 'set_cca_cvm_type'
by kernel test robot 21 Dec '25

21 Dec '25
Hi Yang, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: 419da4d196ffa97d1430d017d1b36348fea395e5 [3544/3544] VirtCCA: Add CCA base operations. config: arm64-defconfig (https://download.01.org/0day-ci/archive/20251221/202512210402.xNA4HhAd-lkp@…) compiler: aarch64-linux-gcc (GCC) 15.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512210402.xNA4HhAd-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/202512210402.xNA4HhAd-lkp@intel.com/ All warnings (new ones prefixed by >>): >> arch/arm64/kvm/cca_base.c:52:6: warning: no previous prototype for 'set_cca_cvm_type' [-Wmissing-prototypes] 52 | void set_cca_cvm_type(int type) | ^~~~~~~~~~~~~~~~ vim +/set_cca_cvm_type +52 arch/arm64/kvm/cca_base.c 51 > 52 void set_cca_cvm_type(int type) 53 { 54 cca_cvm_type = type; 55 } 56 EXPORT_SYMBOL_GPL(set_cca_cvm_type); 57 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 1/1] kismet: WARNING: unmet direct dependencies detected for PFN_RANGE_ALLOC when selected by OBMM
by kernel test robot 21 Dec '25

21 Dec '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: b2b4a358c0963806835f9a6ff96c2e34d1543216 [1/1] obmm: Add Ownership Based Memory Management framework config: arm64-kismet-CONFIG_PFN_RANGE_ALLOC-CONFIG_OBMM-0-0 (https://download.01.org/0day-ci/archive/20251220/202512202153.48eS6EBE-lkp@…) reproduce: (https://download.01.org/0day-ci/archive/20251220/202512202153.48eS6EBE-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/202512202153.48eS6EBE-lkp@intel.com/ kismet warnings: (new ones prefixed by >>) >> kismet: WARNING: unmet direct dependencies detected for PFN_RANGE_ALLOC when selected by OBMM WARNING: unmet direct dependencies detected for PFN_RANGE_ALLOC Depends on [n]: MEMORY_HOTPLUG [=n] Selected by [y]: - OBMM [=y] && UB [=y] && UB_UMMU_CORE [=y] && UB_UBUS [=y] && HISI_SOC_CACHE [=y] WARNING: unmet direct dependencies detected for ARM_SPE_MEM_SAMPLING Depends on [n]: ARM_SPE_PMU [=n] Selected by [y]: - MEM_SAMPLING [=y] && ARM64 [=y] WARNING: unmet direct dependencies detected for ARCH_SUPPORTS_SCHED_SOFT_QUOTA Depends on [n]: CGROUPS [=n] Selected by [y]: - ARM64 [=y] WARNING: unmet direct dependencies detected for NUMA_REMOTE Depends on [n]: NUMA [=y] && ARM64 [=y] && ARM64_4K_PAGES [=y] && SPARSEMEM_VMEMMAP [=y] && ZONE_EXTMEM [=n] Selected by [y]: - OBMM [=y] && UB [=y] && UB_UMMU_CORE [=y] && UB_UBUS [=y] && HISI_SOC_CACHE [=y] WARNING: unmet direct dependencies detected for HALTPOLL_CPUIDLE Depends on [n]: CPU_IDLE [=n] && ARCH_CPUIDLE_HALTPOLL [=y] && ARCH_HAS_OPTIMIZED_POLL [=y] Selected by [y]: - ARM64 [=y] -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 3547/3547] drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1860:22: warning: assignment to 'int (*)(struct pci_dev *)' from 'int' makes pointer from integer without a cast
by kernel test robot 21 Dec '25

21 Dec '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 04473ee9ed912a16fff0d8846ad565bbf3d63c77 commit: 0bf0c942a09ba92e1d22e6960464b628dd4408fa [3547/3547] net/hinic3: Synchronize new NIC features and bug fixes config: arm64-randconfig-003-20251216 (https://download.01.org/0day-ci/archive/20251221/202512210450.P2GW20wS-lkp@…) compiler: aarch64-linux-gcc (GCC) 10.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/202512210450.P2GW20wS-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/202512210450.P2GW20wS-lkp@intel.com/ All error/warnings (new ones prefixed by >>): drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:108:6: warning: no previous prototype for 'hinic3_uld_lock_init' [-Wmissing-prototypes] 108 | void hinic3_uld_lock_init(void) | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:526:5: warning: no previous prototype for 'hinic3_pdev_is_virtfn' [-Wmissing-prototypes] 526 | u32 hinic3_pdev_is_virtfn(struct pci_dev *pdev) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:788:5: warning: no previous prototype for '__set_vroce_func_state' [-Wmissing-prototypes] 788 | int __set_vroce_func_state(struct hinic3_pcidev *pci_adapter) | ^~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:831:6: warning: no previous prototype for 'slave_host_mgmt_vroce_work' [-Wmissing-prototypes] 831 | void slave_host_mgmt_vroce_work(struct work_struct *work) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:841:7: warning: no previous prototype for 'hinic3_get_roce_uld_by_pdev' [-Wmissing-prototypes] 841 | void *hinic3_get_roce_uld_by_pdev(struct pci_dev *pdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1784:6: warning: no previous prototype for 'hinic3_set_func_state' [-Wmissing-prototypes] 1784 | void hinic3_set_func_state(struct hinic3_pcidev *pci_adapter) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1810:6: warning: no previous prototype for 'slave_host_mgmt_work' [-Wmissing-prototypes] 1810 | void slave_host_mgmt_work(struct work_struct *work) | ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c: In function 'slave_host_vfio_probe_delay_work': >> drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1860:24: error: implicit declaration of function '__symbol_get'; did you mean 'symbol_get'? [-Werror=implicit-function-declaration] 1860 | dev_migration_probe = __symbol_get("migration_dev_migration_probe"); | ^~~~~~~~~~~~ | symbol_get >> drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1860:22: warning: assignment to 'int (*)(struct pci_dev *)' from 'int' makes pointer from integer without a cast [-Wint-conversion] 1860 | dev_migration_probe = __symbol_get("migration_dev_migration_probe"); | ^ >> drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1869:3: error: implicit declaration of function '__symbol_put'; did you mean 'symbol_put'? [-Werror=implicit-function-declaration] 1869 | __symbol_put("migration_dev_migration_probe"); | ^~~~~~~~~~~~ | symbol_put drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c: In function 'slave_host_migration_vf_add_delay_work': drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c:1925:23: warning: assignment to 'int (*)(struct pci_dev *)' from 'int' makes pointer from integer without a cast [-Wint-conversion] 1925 | migration_dev_add_vf = __symbol_get("migration_dev_add_vf"); | ^ cc1: some warnings being treated as errors -- drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:621:6: warning: no previous prototype for 'print_port_info' [-Wmissing-prototypes] 621 | void print_port_info(struct hinic3_nic_io *nic_io, | ^~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:803:6: warning: no previous prototype for 'hinic3_notify_vf_bond_status' [-Wmissing-prototypes] 803 | void hinic3_notify_vf_bond_status(struct hinic3_nic_io *nic_io, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:833:6: warning: no previous prototype for 'hinic3_notify_all_vfs_bond_changed' [-Wmissing-prototypes] 833 | void hinic3_notify_all_vfs_bond_changed(void *hwdev, u8 bond_status) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:1671:5: warning: no previous prototype for 'set_fecparam' [-Wmissing-prototypes] 1671 | int set_fecparam(void *hwdev, u8 fecparam) | ^~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:1699:5: warning: no previous prototype for 'get_fecparam' [-Wmissing-prototypes] 1699 | int get_fecparam(void *hwdev, u8 *advertised_fec, u8 *supported_fec) | ^~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c: In function 'get_port_temperature_power.isra': >> drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:548:38: warning: ', rx power: ' directive output may be truncated writing 12 bytes into a region of size between 1 and 512 [-Wformat-truncation=] 548 | snprintf(str, CAP_INFO_MAX_LEN, "%s, rx power: %uuW, tx power: %uuW", | ^~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:548:3: note: 'snprintf' output between 31 and 560 bytes into a destination of size 512 548 | snprintf(str, CAP_INFO_MAX_LEN, "%s, rx power: %uuW, tx power: %uuW", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 549 | cap_info, info->power[0x0], info->power[0x1]); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:544:39: warning: ', rx power: ' directive output may be truncated writing 12 bytes into a region of size between 1 and 512 [-Wformat-truncation=] 544 | snprintf(str, CAP_INFO_MAX_LEN, "%s, rx power: %uuw %uuW %uuW %uuW", | ^~~~~~~~~~~~ drivers/net/ethernet/huawei/hinic3/hinic3_mag_cfg.c:544:3: note: 'snprintf' output between 28 and 575 bytes into a destination of size 512 544 | snprintf(str, CAP_INFO_MAX_LEN, "%s, rx power: %uuw %uuW %uuW %uuW", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 545 | cap_info, info->power[0x0], info->power[0x1], | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 546 | info->power[0x2], info->power[0x3]); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Kconfig warnings: (for reference only) WARNING: unmet direct dependencies detected for PTP_1588_CLOCK Depends on [n]: NET [=y] && POSIX_TIMERS [=n] Selected by [y]: - SXE [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_LINKDATA [=y] && (X86 || ARM64 [=y]) && PCI [=y] - SXE_VF [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_LINKDATA [=y] && (X86 || ARM64 [=y]) && PCI [=y] vim +1860 drivers/net/ethernet/huawei/hinic3/hw/hinic3_lld.c 1847 1848 static void slave_host_vfio_probe_delay_work(struct work_struct *work) 1849 { 1850 struct delayed_work *delay = to_delayed_work(work); 1851 struct hinic3_pcidev *pci_adapter = container_of(delay, struct hinic3_pcidev, 1852 migration_probe_dwork); 1853 struct pci_dev *pdev = pci_adapter->pcidev; 1854 int (*dev_migration_probe)(struct pci_dev *pdev); 1855 int rc; 1856 1857 if (hinic3_func_type((struct hinic3_hwdev *)pci_adapter->hwdev) != TYPE_PF) 1858 return; 1859 > 1860 dev_migration_probe = __symbol_get("migration_dev_migration_probe"); 1861 if (!(dev_migration_probe)) { 1862 sdk_err(&pdev->dev, 1863 "Failed to find: migration_dev_migration_probe"); 1864 queue_delayed_work(pci_adapter->migration_probe_workq, 1865 &pci_adapter->migration_probe_dwork, 1866 WAIT_TIME * HZ); 1867 } else { 1868 rc = dev_migration_probe(pdev); > 1869 __symbol_put("migration_dev_migration_probe"); 1870 if (rc) { 1871 sdk_err(&pdev->dev, 1872 "Failed to __dev_migration_probe, rc:0x%x, pf migrated(%d).\n", 1873 rc, g_is_pf_migrated); 1874 } else { 1875 g_is_pf_migrated = true; 1876 sdk_info(&pdev->dev, 1877 "Succeeded in __dev_migration_probe, pf migrated(%d).\n", 1878 g_is_pf_migrated); 1879 } 1880 } 1881 } 1882 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
  • ← Newer
  • 1
  • 2
  • 3
  • 4
  • ...
  • 2210
  • Older →

HyperKitty Powered by HyperKitty