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 -----
  • 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

  • 52 participants
  • 19133 discussions
[openeuler:OLK-6.6 2439/2439] drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:843:6: error: no previous prototype for function 'sxe_hw_specific_irq_disable'
by kernel test robot 05 Jul '25

05 Jul '25
Hi openeuler-ci-bot, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 016a2eb38be5e29bea5011bd5fed627886f59f65 commit: 0ba0ebb029b99864fa5963024535f48299373354 [2439/2439] !15589 [OLK-6.6] Ethernet: Supports Linkdata ethernet Controllers config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20250705/202507050814.KUGpMC88-lkp@…) compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250705/202507050814.KUGpMC88-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/202507050814.KUGpMC88-lkp@intel.com/ All errors (new ones prefixed by >>): | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:262:6: error: no previous prototype for function 'sxe_hw_uc_addr_pool_del' [-Werror,-Wmissing-prototypes] 262 | void sxe_hw_uc_addr_pool_del(struct sxe_hw *hw, u32 rar_idx, u32 pool_idx) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:262:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 262 | void sxe_hw_uc_addr_pool_del(struct sxe_hw *hw, u32 rar_idx, u32 pool_idx) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:283:5: error: no previous prototype for function 'sxe_hw_uc_addr_pool_enable' [-Werror,-Wmissing-prototypes] 283 | s32 sxe_hw_uc_addr_pool_enable(struct sxe_hw *hw, u8 rar_idx, u8 pool_idx) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:283:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 283 | s32 sxe_hw_uc_addr_pool_enable(struct sxe_hw *hw, u8 rar_idx, u8 pool_idx) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:337:5: error: no previous prototype for function 'sxe_hw_nic_reset' [-Werror,-Wmissing-prototypes] 337 | s32 sxe_hw_nic_reset(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:337:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 337 | s32 sxe_hw_nic_reset(struct sxe_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:367:6: error: no previous prototype for function 'sxe_hw_pf_rst_done_set' [-Werror,-Wmissing-prototypes] 367 | void sxe_hw_pf_rst_done_set(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:367:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 367 | void sxe_hw_pf_rst_done_set(struct sxe_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:735:5: error: no previous prototype for function 'sxe_hw_pending_irq_read_clear' [-Werror,-Wmissing-prototypes] 735 | u32 sxe_hw_pending_irq_read_clear(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:735:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 735 | u32 sxe_hw_pending_irq_read_clear(struct sxe_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:740:6: error: no previous prototype for function 'sxe_hw_pending_irq_write_clear' [-Werror,-Wmissing-prototypes] 740 | void sxe_hw_pending_irq_write_clear(struct sxe_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:740:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 740 | void sxe_hw_pending_irq_write_clear(struct sxe_hw *hw, u32 value) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:745:5: error: no previous prototype for function 'sxe_hw_irq_cause_get' [-Werror,-Wmissing-prototypes] 745 | u32 sxe_hw_irq_cause_get(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:745:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 745 | u32 sxe_hw_irq_cause_get(struct sxe_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:765:6: error: no previous prototype for function 'sxe_hw_ring_irq_auto_disable' [-Werror,-Wmissing-prototypes] 765 | void sxe_hw_ring_irq_auto_disable(struct sxe_hw *hw, bool is_msix) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:765:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 765 | void sxe_hw_ring_irq_auto_disable(struct sxe_hw *hw, bool is_msix) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:775:6: error: no previous prototype for function 'sxe_hw_irq_general_reg_set' [-Werror,-Wmissing-prototypes] 775 | void sxe_hw_irq_general_reg_set(struct sxe_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:775:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 775 | void sxe_hw_irq_general_reg_set(struct sxe_hw *hw, u32 value) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:780:5: error: no previous prototype for function 'sxe_hw_irq_general_reg_get' [-Werror,-Wmissing-prototypes] 780 | u32 sxe_hw_irq_general_reg_get(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:780:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 780 | u32 sxe_hw_irq_general_reg_get(struct sxe_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:790:6: error: no previous prototype for function 'sxe_hw_event_irq_map' [-Werror,-Wmissing-prototypes] 790 | void sxe_hw_event_irq_map(struct sxe_hw *hw, u8 offset, u16 irq_idx) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:790:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 790 | void sxe_hw_event_irq_map(struct sxe_hw *hw, u8 offset, u16 irq_idx) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:806:6: error: no previous prototype for function 'sxe_hw_ring_irq_map' [-Werror,-Wmissing-prototypes] 806 | void sxe_hw_ring_irq_map(struct sxe_hw *hw, bool is_tx, u16 reg_idx, | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:806:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 806 | void sxe_hw_ring_irq_map(struct sxe_hw *hw, bool is_tx, u16 reg_idx, | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:823:6: error: no previous prototype for function 'sxe_hw_ring_irq_interval_set' [-Werror,-Wmissing-prototypes] 823 | void sxe_hw_ring_irq_interval_set(struct sxe_hw *hw, u16 irq_idx, u32 interval) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:823:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 823 | void sxe_hw_ring_irq_interval_set(struct sxe_hw *hw, u16 irq_idx, u32 interval) | ^ | static drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:838:6: error: no previous prototype for function 'sxe_hw_event_irq_auto_clear_set' [-Werror,-Wmissing-prototypes] 838 | void sxe_hw_event_irq_auto_clear_set(struct sxe_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:838:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 838 | void sxe_hw_event_irq_auto_clear_set(struct sxe_hw *hw, u32 value) | ^ | static >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:843:6: error: no previous prototype for function 'sxe_hw_specific_irq_disable' [-Werror,-Wmissing-prototypes] 843 | void sxe_hw_specific_irq_disable(struct sxe_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:843:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 843 | void sxe_hw_specific_irq_disable(struct sxe_hw *hw, u32 value) | ^ | static >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:848:6: error: no previous prototype for function 'sxe_hw_specific_irq_enable' [-Werror,-Wmissing-prototypes] 848 | void sxe_hw_specific_irq_enable(struct sxe_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:848:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 848 | void sxe_hw_specific_irq_enable(struct sxe_hw *hw, u32 value) | ^ | static >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:876:6: error: no previous prototype for function 'sxe_hw_all_irq_disable' [-Werror,-Wmissing-prototypes] 876 | void sxe_hw_all_irq_disable(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:876:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 876 | void sxe_hw_all_irq_disable(struct sxe_hw *hw) | ^ | static >> drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:994:5: error: no previous prototype for function 'sxe_hw_link_speed_get' [-Werror,-Wmissing-prototypes] 994 | u32 sxe_hw_link_speed_get(struct sxe_hw *hw) | ^ drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c:994:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 994 | u32 sxe_hw_link_speed_get(struct sxe_hw *hw) | ^ | static fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. -- In file included from drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_ethtool.c:12: In file included from drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_ethtool.h:14: In file included from include/linux/ethtool.h:16: In file included from include/linux/bitmap.h:11: In file included from include/linux/string.h:294: >> include/linux/fortify-string.h:606:4: error: call to '__read_overflow2_field' declared with 'warning' attribute: detected read beyond size of field (2nd parameter); maybe use struct_group()? [-Werror,-Wattribute-warning] 606 | __read_overflow2_field(q_size_field, size); | ^ 1 error generated. -- | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:187:6: error: no previous prototype for function 'sxevf_msg_write' [-Werror,-Wmissing-prototypes] 187 | void sxevf_msg_write(struct sxevf_hw *hw, u8 index, u32 msg) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:187:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 187 | void sxevf_msg_write(struct sxevf_hw *hw, u8 index, u32 msg) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:196:5: error: no previous prototype for function 'sxevf_msg_read' [-Werror,-Wmissing-prototypes] 196 | u32 sxevf_msg_read(struct sxevf_hw *hw, u8 index) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:196:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 196 | u32 sxevf_msg_read(struct sxevf_hw *hw, u8 index) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:206:5: error: no previous prototype for function 'sxevf_mailbox_read' [-Werror,-Wmissing-prototypes] 206 | u32 sxevf_mailbox_read(struct sxevf_hw *hw) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:206:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 206 | u32 sxevf_mailbox_read(struct sxevf_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:211:6: error: no previous prototype for function 'sxevf_mailbox_write' [-Werror,-Wmissing-prototypes] 211 | void sxevf_mailbox_write(struct sxevf_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:211:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 211 | void sxevf_mailbox_write(struct sxevf_hw *hw, u32 value) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:216:6: error: no previous prototype for function 'sxevf_pf_req_irq_trigger' [-Werror,-Wmissing-prototypes] 216 | void sxevf_pf_req_irq_trigger(struct sxevf_hw *hw) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:216:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 216 | void sxevf_pf_req_irq_trigger(struct sxevf_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:221:6: error: no previous prototype for function 'sxevf_pf_ack_irq_trigger' [-Werror,-Wmissing-prototypes] 221 | void sxevf_pf_ack_irq_trigger(struct sxevf_hw *hw) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:221:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 221 | void sxevf_pf_ack_irq_trigger(struct sxevf_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:226:6: error: no previous prototype for function 'sxevf_event_irq_map' [-Werror,-Wmissing-prototypes] 226 | void sxevf_event_irq_map(struct sxevf_hw *hw, u16 vector) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:226:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 226 | void sxevf_event_irq_map(struct sxevf_hw *hw, u16 vector) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:240:6: error: no previous prototype for function 'sxevf_specific_irq_enable' [-Werror,-Wmissing-prototypes] 240 | void sxevf_specific_irq_enable(struct sxevf_hw *hw, u32 value) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:240:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 240 | void sxevf_specific_irq_enable(struct sxevf_hw *hw, u32 value) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:245:6: error: no previous prototype for function 'sxevf_irq_enable' [-Werror,-Wmissing-prototypes] 245 | void sxevf_irq_enable(struct sxevf_hw *hw, u32 mask) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:245:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 245 | void sxevf_irq_enable(struct sxevf_hw *hw, u32 mask) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:251:6: error: no previous prototype for function 'sxevf_irq_disable' [-Werror,-Wmissing-prototypes] 251 | void sxevf_irq_disable(struct sxevf_hw *hw) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:251:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 251 | void sxevf_irq_disable(struct sxevf_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:259:6: error: no previous prototype for function 'sxevf_hw_ring_irq_map' [-Werror,-Wmissing-prototypes] 259 | void sxevf_hw_ring_irq_map(struct sxevf_hw *hw, bool is_tx, u16 hw_ring_idx, | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:259:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 259 | void sxevf_hw_ring_irq_map(struct sxevf_hw *hw, bool is_tx, u16 hw_ring_idx, | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:276:6: error: no previous prototype for function 'sxevf_ring_irq_interval_set' [-Werror,-Wmissing-prototypes] 276 | void sxevf_ring_irq_interval_set(struct sxevf_hw *hw, u16 irq_idx, u32 interval) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:276:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 276 | void sxevf_ring_irq_interval_set(struct sxevf_hw *hw, u16 irq_idx, u32 interval) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:313:6: error: no previous prototype for function 'sxevf_hw_reset' [-Werror,-Wmissing-prototypes] 313 | void sxevf_hw_reset(struct sxevf_hw *hw) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:313:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 313 | void sxevf_hw_reset(struct sxevf_hw *hw) | ^ | static drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:324:5: error: no previous prototype for function 'sxevf_link_state_get' [-Werror,-Wmissing-prototypes] 324 | u32 sxevf_link_state_get(struct sxevf_hw *hw) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:324:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 324 | u32 sxevf_link_state_get(struct sxevf_hw *hw) | ^ | static >> drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:539:6: error: no previous prototype for function 'sxevf_tx_ring_switch' [-Werror,-Wmissing-prototypes] 539 | void sxevf_tx_ring_switch(struct sxevf_hw *hw, u8 reg_idx, bool is_on) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:539:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 539 | void sxevf_tx_ring_switch(struct sxevf_hw *hw, u8 reg_idx, bool is_on) | ^ | static >> drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:594:6: error: no previous prototype for function 'sxevf_rx_ring_switch' [-Werror,-Wmissing-prototypes] 594 | void sxevf_rx_ring_switch(struct sxevf_hw *hw, u8 reg_idx, bool is_on) | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:594:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 594 | void sxevf_rx_ring_switch(struct sxevf_hw *hw, u8 reg_idx, bool is_on) | ^ | static >> drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:626:6: error: no previous prototype for function 'sxevf_rx_ring_desc_configure' [-Werror,-Wmissing-prototypes] 626 | void sxevf_rx_ring_desc_configure(struct sxevf_hw *hw, u32 desc_mem_len, | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:626:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 626 | void sxevf_rx_ring_desc_configure(struct sxevf_hw *hw, u32 desc_mem_len, | ^ | static >> drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:640:6: error: no previous prototype for function 'sxevf_rx_rcv_ctl_configure' [-Werror,-Wmissing-prototypes] 640 | void sxevf_rx_rcv_ctl_configure(struct sxevf_hw *hw, u8 reg_idx, | ^ drivers/net/ethernet/linkdata/sxevf/sxevf/sxevf_hw.c:640:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 640 | void sxevf_rx_rcv_ctl_configure(struct sxevf_hw *hw, u8 reg_idx, | ^ | static fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. vim +/sxe_hw_specific_irq_disable +843 drivers/net/ethernet/linkdata/sxe/sxepf/sxe_hw.c dd013ad487534c liujie_answer 2025-04-15 842 dd013ad487534c liujie_answer 2025-04-15 @843 void sxe_hw_specific_irq_disable(struct sxe_hw *hw, u32 value) dd013ad487534c liujie_answer 2025-04-15 844 { dd013ad487534c liujie_answer 2025-04-15 845 SXE_REG_WRITE(hw, SXE_EIMC, value); dd013ad487534c liujie_answer 2025-04-15 846 } dd013ad487534c liujie_answer 2025-04-15 847 dd013ad487534c liujie_answer 2025-04-15 @848 void sxe_hw_specific_irq_enable(struct sxe_hw *hw, u32 value) dd013ad487534c liujie_answer 2025-04-15 849 { dd013ad487534c liujie_answer 2025-04-15 850 SXE_REG_WRITE(hw, SXE_EIMS, value); dd013ad487534c liujie_answer 2025-04-15 851 } dd013ad487534c liujie_answer 2025-04-15 852 dd013ad487534c liujie_answer 2025-04-15 853 static u32 sxe_hw_spp_state_get(struct sxe_hw *hw) dd013ad487534c liujie_answer 2025-04-15 854 { dd013ad487534c liujie_answer 2025-04-15 855 return SXE_REG_READ(hw, SXE_SPP_STATE); dd013ad487534c liujie_answer 2025-04-15 856 } dd013ad487534c liujie_answer 2025-04-15 857 dd013ad487534c liujie_answer 2025-04-15 858 static void sxe_hw_rx_los_disable(struct sxe_hw *hw) dd013ad487534c liujie_answer 2025-04-15 859 { dd013ad487534c liujie_answer 2025-04-15 860 u32 value; dd013ad487534c liujie_answer 2025-04-15 861 dd013ad487534c liujie_answer 2025-04-15 862 value = SXE_REG_READ(hw, SXE_EIMS); dd013ad487534c liujie_answer 2025-04-15 863 value &= ~SXE_EIMS_GPI_SPP1; dd013ad487534c liujie_answer 2025-04-15 864 SXE_REG_WRITE(hw, SXE_EIMS, value); dd013ad487534c liujie_answer 2025-04-15 865 } dd013ad487534c liujie_answer 2025-04-15 866 dd013ad487534c liujie_answer 2025-04-15 867 static void sxe_hw_rx_los_enable(struct sxe_hw *hw) dd013ad487534c liujie_answer 2025-04-15 868 { dd013ad487534c liujie_answer 2025-04-15 869 u32 value; dd013ad487534c liujie_answer 2025-04-15 870 dd013ad487534c liujie_answer 2025-04-15 871 value = SXE_REG_READ(hw, SXE_EIMS); dd013ad487534c liujie_answer 2025-04-15 872 value |= SXE_EIMS_GPI_SPP1; dd013ad487534c liujie_answer 2025-04-15 873 SXE_REG_WRITE(hw, SXE_EIMS, value); dd013ad487534c liujie_answer 2025-04-15 874 } dd013ad487534c liujie_answer 2025-04-15 875 dd013ad487534c liujie_answer 2025-04-15 @876 void sxe_hw_all_irq_disable(struct sxe_hw *hw) dd013ad487534c liujie_answer 2025-04-15 877 { dd013ad487534c liujie_answer 2025-04-15 878 SXE_REG_WRITE(hw, SXE_EIMC, 0xFFFF0000); dd013ad487534c liujie_answer 2025-04-15 879 dd013ad487534c liujie_answer 2025-04-15 880 SXE_REG_WRITE(hw, SXE_EIMC_EX(0), ~0); dd013ad487534c liujie_answer 2025-04-15 881 SXE_REG_WRITE(hw, SXE_EIMC_EX(1), ~0); dd013ad487534c liujie_answer 2025-04-15 882 dd013ad487534c liujie_answer 2025-04-15 883 SXE_WRITE_FLUSH(hw); dd013ad487534c liujie_answer 2025-04-15 884 } dd013ad487534c liujie_answer 2025-04-15 885 dd013ad487534c liujie_answer 2025-04-15 886 static void sxe_hw_spp_configure(struct sxe_hw *hw, u32 hw_spp_proc_delay_us) dd013ad487534c liujie_answer 2025-04-15 887 { dd013ad487534c liujie_answer 2025-04-15 888 u32 reg = SXE_REG_READ(hw, SXE_SPP_PROC); dd013ad487534c liujie_answer 2025-04-15 889 dd013ad487534c liujie_answer 2025-04-15 890 reg &= ~SXE_SPP_PROC_DELAY_US_MASK; dd013ad487534c liujie_answer 2025-04-15 891 reg |= hw_spp_proc_delay_us; dd013ad487534c liujie_answer 2025-04-15 892 reg &= SXE_SPP_PROC_SPP2_TRIGGER_MASK; dd013ad487534c liujie_answer 2025-04-15 893 reg |= SXE_SPP_PROC_SPP2_TRIGGER; dd013ad487534c liujie_answer 2025-04-15 894 dd013ad487534c liujie_answer 2025-04-15 895 SXE_REG_WRITE(hw, SXE_SPP_PROC, reg); dd013ad487534c liujie_answer 2025-04-15 896 } dd013ad487534c liujie_answer 2025-04-15 897 dd013ad487534c liujie_answer 2025-04-15 898 static s32 sxe_hw_irq_test(struct sxe_hw *hw, u32 *icr, bool shared) dd013ad487534c liujie_answer 2025-04-15 899 { dd013ad487534c liujie_answer 2025-04-15 900 s32 ret = 0; dd013ad487534c liujie_answer 2025-04-15 901 u32 i, mask; dd013ad487534c liujie_answer 2025-04-15 902 struct sxe_adapter *adapter = hw->adapter; dd013ad487534c liujie_answer 2025-04-15 903 dd013ad487534c liujie_answer 2025-04-15 904 sxe_hw_specific_irq_disable(hw, 0xFFFFFFFF); dd013ad487534c liujie_answer 2025-04-15 905 sxe_hw_regs_flush(hw); dd013ad487534c liujie_answer 2025-04-15 906 usleep_range(10000, 20000); dd013ad487534c liujie_answer 2025-04-15 907 dd013ad487534c liujie_answer 2025-04-15 908 for (i = 0; i < 10; i++) { dd013ad487534c liujie_answer 2025-04-15 909 mask = BIT(i); dd013ad487534c liujie_answer 2025-04-15 910 if (!shared) { dd013ad487534c liujie_answer 2025-04-15 911 LOG_INFO_BDF("test irq: irq test start\n"); dd013ad487534c liujie_answer 2025-04-15 912 *icr = 0; dd013ad487534c liujie_answer 2025-04-15 913 SXE_REG_WRITE(hw, SXE_EIMC, ~mask & 0x00007FFF); dd013ad487534c liujie_answer 2025-04-15 914 SXE_REG_WRITE(hw, SXE_EICS, ~mask & 0x00007FFF); dd013ad487534c liujie_answer 2025-04-15 915 sxe_hw_regs_flush(hw); dd013ad487534c liujie_answer 2025-04-15 916 usleep_range(10000, 20000); dd013ad487534c liujie_answer 2025-04-15 917 dd013ad487534c liujie_answer 2025-04-15 918 if (*icr & mask) { dd013ad487534c liujie_answer 2025-04-15 919 LOG_ERROR_BDF("test irq: failed, eicr = %x\n", *icr); dd013ad487534c liujie_answer 2025-04-15 920 ret = -SXE_DIAG_DISABLE_IRQ_TEST_ERR; dd013ad487534c liujie_answer 2025-04-15 921 break; dd013ad487534c liujie_answer 2025-04-15 922 } dd013ad487534c liujie_answer 2025-04-15 923 LOG_INFO_BDF("test irq: irq test end\n"); dd013ad487534c liujie_answer 2025-04-15 924 } dd013ad487534c liujie_answer 2025-04-15 925 dd013ad487534c liujie_answer 2025-04-15 926 LOG_INFO_BDF("test irq: mask irq test start\n"); dd013ad487534c liujie_answer 2025-04-15 927 *icr = 0; dd013ad487534c liujie_answer 2025-04-15 928 SXE_REG_WRITE(hw, SXE_EIMS, mask); dd013ad487534c liujie_answer 2025-04-15 929 SXE_REG_WRITE(hw, SXE_EICS, mask); dd013ad487534c liujie_answer 2025-04-15 930 sxe_hw_regs_flush(hw); dd013ad487534c liujie_answer 2025-04-15 931 usleep_range(10000, 20000); dd013ad487534c liujie_answer 2025-04-15 932 dd013ad487534c liujie_answer 2025-04-15 933 if (!(*icr & mask)) { dd013ad487534c liujie_answer 2025-04-15 934 LOG_ERROR_BDF("test irq: mask failed, eicr = %x\n", *icr); dd013ad487534c liujie_answer 2025-04-15 935 ret = -SXE_DIAG_ENABLE_IRQ_TEST_ERR; dd013ad487534c liujie_answer 2025-04-15 936 break; dd013ad487534c liujie_answer 2025-04-15 937 } dd013ad487534c liujie_answer 2025-04-15 938 LOG_INFO_BDF("test irq: mask irq test end\n"); dd013ad487534c liujie_answer 2025-04-15 939 dd013ad487534c liujie_answer 2025-04-15 940 sxe_hw_specific_irq_disable(hw, mask); dd013ad487534c liujie_answer 2025-04-15 941 sxe_hw_regs_flush(hw); dd013ad487534c liujie_answer 2025-04-15 942 usleep_range(10000, 20000); dd013ad487534c liujie_answer 2025-04-15 943 dd013ad487534c liujie_answer 2025-04-15 944 if (!shared) { dd013ad487534c liujie_answer 2025-04-15 945 LOG_INFO_BDF("test irq: other irq test start\n"); dd013ad487534c liujie_answer 2025-04-15 946 *icr = 0; dd013ad487534c liujie_answer 2025-04-15 947 SXE_REG_WRITE(hw, SXE_EIMC, ~mask & 0x00007FFF); dd013ad487534c liujie_answer 2025-04-15 948 SXE_REG_WRITE(hw, SXE_EICS, ~mask & 0x00007FFF); dd013ad487534c liujie_answer 2025-04-15 949 sxe_hw_regs_flush(hw); dd013ad487534c liujie_answer 2025-04-15 950 usleep_range(10000, 20000); dd013ad487534c liujie_answer 2025-04-15 951 dd013ad487534c liujie_answer 2025-04-15 952 if (*icr) { dd013ad487534c liujie_answer 2025-04-15 953 LOG_ERROR_BDF("test irq: other irq failed, eicr = %x\n", *icr); dd013ad487534c liujie_answer 2025-04-15 954 ret = -SXE_DIAG_DISABLE_OTHER_IRQ_TEST_ERR; dd013ad487534c liujie_answer 2025-04-15 955 break; dd013ad487534c liujie_answer 2025-04-15 956 } dd013ad487534c liujie_answer 2025-04-15 957 LOG_INFO_BDF("test irq: other irq test end\n"); dd013ad487534c liujie_answer 2025-04-15 958 } dd013ad487534c liujie_answer 2025-04-15 959 } dd013ad487534c liujie_answer 2025-04-15 960 dd013ad487534c liujie_answer 2025-04-15 961 sxe_hw_specific_irq_disable(hw, 0xFFFFFFFF); dd013ad487534c liujie_answer 2025-04-15 962 sxe_hw_regs_flush(hw); dd013ad487534c liujie_answer 2025-04-15 963 usleep_range(10000, 20000); dd013ad487534c liujie_answer 2025-04-15 964 dd013ad487534c liujie_answer 2025-04-15 965 return ret; dd013ad487534c liujie_answer 2025-04-15 966 } dd013ad487534c liujie_answer 2025-04-15 967 dd013ad487534c liujie_answer 2025-04-15 968 static const struct sxe_irq_operations sxe_irq_ops = { dd013ad487534c liujie_answer 2025-04-15 969 .event_irq_auto_clear_set = sxe_hw_event_irq_auto_clear_set, dd013ad487534c liujie_answer 2025-04-15 970 .ring_irq_interval_set = sxe_hw_ring_irq_interval_set, dd013ad487534c liujie_answer 2025-04-15 971 .event_irq_interval_set = sxe_hw_event_irq_interval_set, dd013ad487534c liujie_answer 2025-04-15 972 .set_eitrsel = sxe_hw_set_eitrsel, dd013ad487534c liujie_answer 2025-04-15 973 .ring_irq_map = sxe_hw_ring_irq_map, dd013ad487534c liujie_answer 2025-04-15 974 .event_irq_map = sxe_hw_event_irq_map, dd013ad487534c liujie_answer 2025-04-15 975 .irq_general_reg_set = sxe_hw_irq_general_reg_set, dd013ad487534c liujie_answer 2025-04-15 976 .irq_general_reg_get = sxe_hw_irq_general_reg_get, dd013ad487534c liujie_answer 2025-04-15 977 .ring_irq_auto_disable = sxe_hw_ring_irq_auto_disable, dd013ad487534c liujie_answer 2025-04-15 978 .pending_irq_read_clear = sxe_hw_pending_irq_read_clear, dd013ad487534c liujie_answer 2025-04-15 979 .pending_irq_write_clear = sxe_hw_pending_irq_write_clear, dd013ad487534c liujie_answer 2025-04-15 980 .ring_irq_enable = sxe_hw_ring_irq_enable, dd013ad487534c liujie_answer 2025-04-15 981 .irq_cause_get = sxe_hw_irq_cause_get, dd013ad487534c liujie_answer 2025-04-15 982 .event_irq_trigger = sxe_hw_event_irq_trigger, dd013ad487534c liujie_answer 2025-04-15 983 .ring_irq_trigger = sxe_hw_ring_irq_trigger, dd013ad487534c liujie_answer 2025-04-15 984 .specific_irq_disable = sxe_hw_specific_irq_disable, dd013ad487534c liujie_answer 2025-04-15 985 .specific_irq_enable = sxe_hw_specific_irq_enable, dd013ad487534c liujie_answer 2025-04-15 986 .spp_state_get = sxe_hw_spp_state_get, dd013ad487534c liujie_answer 2025-04-15 987 .rx_los_disable = sxe_hw_rx_los_disable, dd013ad487534c liujie_answer 2025-04-15 988 .rx_los_enable = sxe_hw_rx_los_enable, dd013ad487534c liujie_answer 2025-04-15 989 .all_irq_disable = sxe_hw_all_irq_disable, dd013ad487534c liujie_answer 2025-04-15 990 .spp_configure = sxe_hw_spp_configure, dd013ad487534c liujie_answer 2025-04-15 991 .irq_test = sxe_hw_irq_test, dd013ad487534c liujie_answer 2025-04-15 992 }; dd013ad487534c liujie_answer 2025-04-15 993 dd013ad487534c liujie_answer 2025-04-15 @994 u32 sxe_hw_link_speed_get(struct sxe_hw *hw) dd013ad487534c liujie_answer 2025-04-15 995 { dd013ad487534c liujie_answer 2025-04-15 996 u32 speed, value; dd013ad487534c liujie_answer 2025-04-15 997 struct sxe_adapter *adapter = hw->adapter; dd013ad487534c liujie_answer 2025-04-15 998 dd013ad487534c liujie_answer 2025-04-15 999 value = SXE_REG_READ(hw, SXE_COMCTRL); dd013ad487534c liujie_answer 2025-04-15 1000 dd013ad487534c liujie_answer 2025-04-15 1001 if ((value & SXE_COMCTRL_SPEED_10G) == SXE_COMCTRL_SPEED_10G) dd013ad487534c liujie_answer 2025-04-15 1002 speed = SXE_LINK_SPEED_10GB_FULL; dd013ad487534c liujie_answer 2025-04-15 1003 else if ((value & SXE_COMCTRL_SPEED_1G) == SXE_COMCTRL_SPEED_1G) dd013ad487534c liujie_answer 2025-04-15 1004 speed = SXE_LINK_SPEED_1GB_FULL; dd013ad487534c liujie_answer 2025-04-15 1005 else dd013ad487534c liujie_answer 2025-04-15 1006 speed = SXE_LINK_SPEED_UNKNOWN; dd013ad487534c liujie_answer 2025-04-15 1007 dd013ad487534c liujie_answer 2025-04-15 1008 LOG_DEBUG_BDF("hw link speed=%x, (0x80=10G, 0x20=1G)\n, reg=%x", dd013ad487534c liujie_answer 2025-04-15 1009 speed, value); dd013ad487534c liujie_answer 2025-04-15 1010 dd013ad487534c liujie_answer 2025-04-15 1011 return speed; dd013ad487534c liujie_answer 2025-04-15 1012 } dd013ad487534c liujie_answer 2025-04-15 1013 :::::: The code at line 843 was first introduced by commit :::::: dd013ad487534c1838afc2f55efdb5daec15aace 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 2464/2464] drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:5611:11: warning: default initialization of an object of type 'const u8[6]' (aka 'const unsigned char[6]') leaves the object uninitialized
by kernel test robot 05 Jul '25

05 Jul '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 016a2eb38be5e29bea5011bd5fed627886f59f65 commit: eba3cbcfeafedc65b74eea8faf68aae00aebd5b6 [2464/2464] drivers: initial support for rnpgbe drivers from Mucse Technology config: loongarch-allyesconfig (https://download.01.org/0day-ci/archive/20250705/202507050704.uDK4BfSC-lkp@…) compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project 61529d9e36fa86782a2458e6bdeedf7f376ef4b5) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250705/202507050704.uDK4BfSC-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/202507050704.uDK4BfSC-lkp@intel.com/ All warnings (new ones prefixed by >>): | ^ In file included from drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:35: drivers/net/ethernet/mucse/rnpgbe/rnpgbe_common.h:275:7: warning: variable 'has_mac' set but not used [-Wunused-but-set-variable] 275 | bool has_mac, has_trans; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_common.h:275:16: warning: variable 'has_trans' set but not used [-Wunused-but-set-variable] 275 | bool has_mac, has_trans; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_common.h:276:6: warning: variable 'headroom' set but not used [-Wunused-but-set-variable] 276 | int headroom, tailroom; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_common.h:276:16: warning: variable 'tailroom' set but not used [-Wunused-but-set-variable] 276 | int headroom, tailroom; | ^ In file included from drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:40: In file included from include/net/vxlan.h:7: In file included from include/net/udp_tunnel.h:5: In file included from include/net/ip_tunnels.h:19: In file included from include/net/dst_cache.h:8: include/net/ip6_fib.h:269:10: warning: default initialization of an object of type 'typeof (f6i->expires)' (aka 'const unsigned long') leaves the object uninitialized [-Wdefault-const-init-var-unsafe] 269 | return time_after(jiffies, f6i->expires); | ^ include/linux/jiffies.h:126:3: note: expanded from macro 'time_after' 126 | typecheck(unsigned long, b) && \ | ^ include/linux/typecheck.h:11:12: note: expanded from macro 'typecheck' 11 | typeof(x) __dummy2; \ | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:271:6: warning: no previous prototype for function 'rnpgbe_disable_eee_mode' [-Wmissing-prototypes] 271 | void rnpgbe_disable_eee_mode(struct rnpgbe_adapter *adapter) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:271:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 271 | void rnpgbe_disable_eee_mode(struct rnpgbe_adapter *adapter) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:730:5: warning: no previous prototype for function 'rnpgbe_rx_ring_reinit' [-Wmissing-prototypes] 730 | int rnpgbe_rx_ring_reinit(struct rnpgbe_adapter *adapter, | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:730:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 730 | int rnpgbe_rx_ring_reinit(struct rnpgbe_adapter *adapter, | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:1933:7: warning: variable 'xdp_xmit' set but not used [-Wunused-but-set-variable] 1933 | bool xdp_xmit = false; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:2170:6: warning: no previous prototype for function 'rnpgbe_write_eitr_rx' [-Wmissing-prototypes] 2170 | void rnpgbe_write_eitr_rx(struct rnpgbe_q_vector *q_vector) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:2170:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2170 | void rnpgbe_write_eitr_rx(struct rnpgbe_q_vector *q_vector) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:2350:6: warning: variable 'cleaned_total' set but not used [-Wunused-but-set-variable] 2350 | int cleaned_total = 0; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:2893:6: warning: variable 'rxctrl' set but not used [-Wunused-but-set-variable] 2893 | u32 rxctrl = 0, dma_axi_ctl; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3209:6: warning: no previous prototype for function 'rnpgbe_vlan_stags_flag' [-Wmissing-prototypes] 3209 | void rnpgbe_vlan_stags_flag(struct rnpgbe_adapter *adapter) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3209:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3209 | void rnpgbe_vlan_stags_flag(struct rnpgbe_adapter *adapter) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3314:6: warning: no previous prototype for function 'rnpgbe_reinit_locked' [-Wmissing-prototypes] 3314 | void rnpgbe_reinit_locked(struct rnpgbe_adapter *adapter) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3314:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3314 | void rnpgbe_reinit_locked(struct rnpgbe_adapter *adapter) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3487:5: warning: no previous prototype for function 'rnpgbe_xmit_nop_frame_ring' [-Wmissing-prototypes] 3487 | int rnpgbe_xmit_nop_frame_ring(struct rnpgbe_adapter *adapter, | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3487:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3487 | int rnpgbe_xmit_nop_frame_ring(struct rnpgbe_adapter *adapter, | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3503:6: warning: no previous prototype for function 'print_status' [-Wmissing-prototypes] 3503 | void print_status(struct rnpgbe_adapter *adapter) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:3503:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 3503 | void print_status(struct rnpgbe_adapter *adapter) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:4624:6: warning: no previous prototype for function 'rnpgbe_eee_init' [-Wmissing-prototypes] 4624 | bool rnpgbe_eee_init(struct rnpgbe_adapter *adapter) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:4624:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 4624 | bool rnpgbe_eee_init(struct rnpgbe_adapter *adapter) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:4651:5: warning: no previous prototype for function 'rnpgbe_phy_init_eee' [-Wmissing-prototypes] 4651 | int rnpgbe_phy_init_eee(struct rnpgbe_adapter *adapter) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:4651:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 4651 | int rnpgbe_phy_init_eee(struct rnpgbe_adapter *adapter) | ^ | static >> drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:5611:11: warning: default initialization of an object of type 'const u8[6]' (aka 'const unsigned char[6]') leaves the object uninitialized [-Wdefault-const-init-var-unsafe] 5611 | const u8 target_addr[ETH_ALEN]; | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:6132:6: warning: no previous prototype for function 'rnpgbe_assign_netdev_ops' [-Wmissing-prototypes] 6132 | void rnpgbe_assign_netdev_ops(struct net_device *dev) | ^ drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:6132:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 6132 | void rnpgbe_assign_netdev_ops(struct net_device *dev) | ^ | static drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c:6166:29: warning: unused function 'rnpgbe_tso_features' [-Wunused-function] 6166 | static inline unsigned long rnpgbe_tso_features(struct rnpgbe_hw *hw) | ^~~~~~~~~~~~~~~~~~~ 26 warnings generated. vim +5611 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c 5598 5599 /** 5600 * rnpgbe_set_mac - Change the Ethernet Address of the NIC 5601 * @netdev: network interface device structure 5602 * @p: pointer to an address structure 5603 * 5604 * Returns 0 on success, negative on failure 5605 **/ 5606 static int rnpgbe_set_mac(struct net_device *netdev, void *p) 5607 { 5608 struct rnpgbe_adapter *adapter = netdev_priv(netdev); 5609 struct rnpgbe_hw *hw = &adapter->hw; 5610 struct sockaddr *addr = p; > 5611 const u8 target_addr[ETH_ALEN]; 5612 bool sriov_flag = !!(adapter->flags & RNP_FLAG_SRIOV_ENABLED); 5613 5614 memcpy((void *)target_addr, addr->sa_data, netdev->addr_len); 5615 5616 if (!is_valid_ether_addr(target_addr)) 5617 return -EADDRNOTAVAIL; 5618 5619 eth_hw_addr_set(netdev, target_addr); 5620 memcpy(hw->mac.addr, addr->sa_data, netdev->addr_len); 5621 hw->ops.set_mac(hw, hw->mac.addr, sriov_flag); 5622 /* reset veb table */ 5623 rnpgbe_configure_virtualization(adapter); 5624 5625 return 0; 5626 } 5627 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS] BUILD REGRESSION 44dfa3e24fdde8e95b4815dc4d365cb20755a5e4
by kernel test robot 05 Jul '25

05 Jul '25
tree/branch: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS branch HEAD: 44dfa3e24fdde8e95b4815dc4d365cb20755a5e4 !16913 drm/amd/display: clear optc underflow before turn off odm clock Error/Warning (recently discovered and may have been fixed): https://lore.kernel.org/oe-kbuild-all/202506061449.nBm6oAvj-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202506061633.Zsp5yfyi-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202506061637.CVNqsEqf-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202506061755.yar1Fr9d-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202506182031.ldH7VynO-lkp@intel.com https://lore.kernel.org/oe-kbuild-all/202507030343.E83xAhC0-lkp@intel.com https://lore.kernel.org/oe-kbuild/202507042042.b6uSHoZy-lkp@intel.com drivers/gpu/drm/amd/amdgpu/amdgpu_ids.o: warning: objtool: amdgpu_vmid_grab()+0xd3e: unreachable instruction fs/debugfs/file.o: warning: objtool: full_proxy_open()+0x55a: unreachable instruction fs/ext4/mballoc.o: warning: objtool: ext4_mb_complex_scan_group()+0x11a4: unreachable instruction kernel/sched/core.c:5976:22: error: use of undeclared identifier 'root_task_group'; did you mean 'task_group'? kernel/sched/core.c:5989:29: error: 'root_task_group' undeclared (first use in this function); did you mean 'task_group'? kernel/sched/debug.c:990:17: error: no member named 'nr_wakeups_preferred_cpus' in 'struct dyn_affinity_stats' kernel/sched/debug.c:991:17: error: no member named 'nr_wakeups_force_preferred_cpus' in 'struct dyn_affinity_stats' mm/debug.c:143:21: warning: more '%' conversions than data arguments [-Wformat-insufficient-args] mm/debug.c:174:3: warning: format specifies type 'void *' but the argument has type 'int' [-Wformat] mm/debug.c:175:18: warning: format specifies type 'unsigned long' but the argument has type 'const unsigned long *' [-Wformat] mm/debug.c:175:3: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat] mm/hugetlb.c:1370:6: warning: no previous prototype for function 'free_huge_page_to_dhugetlb_pool' [-Wmissing-prototypes] mm/memcontrol.c:5000:6: warning: no previous prototype for function 'dhugetlb_pool_is_free' [-Wmissing-prototypes] mm/memory.c:4803:3: warning: cast from 'int (*)(unsigned long, unsigned long, struct cgp_args *)' to 'ktask_thread_func' (aka 'int (*)(void *, void *, void *)') converts to incompatible function type [-Wcast-function-type-mismatch] mm/memory_hotplug.c:970:13: warning: 'rollback_node_hotadd' defined but not used [-Wunused-function] mm/mmu_gather.o: warning: objtool: missing symbol for section .text mm/page_alloc.c:3123: warning: Function parameter or member 'mt' not described in '__putback_isolated_page' mm/vmalloc.c:231:16: warning: variable 'start' set but not used [-Wunused-but-set-variable] mm/vmalloc.c:231:23: warning: variable 'start' set but not used [-Wunused-but-set-variable] mm/vmscan.c:3257:21: error: implicit declaration of function 'kernel_swap_enabled' [-Werror,-Wimplicit-function-declaration] Unverified Error/Warning (likely false positive, kindly check if interested): block/blk-throttle.c:2306:1-7: preceding lock on line 2212 drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c:854:5: warning: 'new_state' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/net/ethernet/agere/et131x.c:1310:16: warning: 'reg' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/net/wireless/mediatek/mt76/mt76x2_eeprom.c:569:37: warning: 'data[2]' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/net/wireless/rsi/rsi_91x_sdio.c:1223:7: warning: 'data' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/net/wireless/rsi/rsi_91x_sdio.c:237:12: warning: 'resp' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/nvdimm/label.o: warning: objtool: nd_blk_namespace_label_update()+0x1326: unreachable instruction include/asm-generic/bug.h:70:12: warning: 'mcu_ctrl' may be used uninitialized in this function [-Wmaybe-uninitialized] include/scsi/scsi_cmnd.h:333:12: warning: 'scsi_cmnd' may be used uninitialized in this function [-Wmaybe-uninitialized] kernel/time/posix-cpu-timers.c:1023:3: warning: 'now' may be used uninitialized in this function [-Wmaybe-uninitialized] mm/page_owner.o: warning: objtool: missing symbol for section .text.unlikely. mm/rmap.c:1684:6: warning: no previous prototype for 'is_vma_temporary_stack' [-Wmissing-prototypes] mm/rodata_test.c:19:6: warning: no previous prototype for 'rodata_test' [-Wmissing-prototypes] net/9p/client.c:534:24: warning: 'type' may be used uninitialized in this function [-Wmaybe-uninitialized] Error/Warning ids grouped by kconfigs: recent_errors |-- arm64-allmodconfig | |-- include-asm-generic-bitops-non-atomic.h:error:array-subscript-long-unsigned-int-is-partly-outside-array-bounds-of-u32-aka-unsigned-int | |-- include-uapi-linux-sctp.h:error:alignment-of-struct-sctp_paddr_change-is-less-than | |-- include-uapi-linux-sctp.h:error:alignment-of-struct-sctp_paddrinfo-is-less-than | |-- include-uapi-linux-sctp.h:error:alignment-of-struct-sctp_paddrparams-is-less-than | |-- include-uapi-linux-sctp.h:error:alignment-of-struct-sctp_prim-is-less-than | |-- include-uapi-linux-sctp.h:error:alignment-of-struct-sctp_setpeerprim-is-less-than | |-- include-uapi-linux-sctp.h:error:spinfo_address-offset-in-struct-sctp_paddrinfo-isn-t-aligned-to | |-- include-uapi-linux-sctp.h:error:spp_address-offset-in-struct-sctp_paddrparams-isn-t-aligned-to | |-- include-uapi-linux-sctp.h:error:ssp_addr-offset-in-struct-sctp_prim-isn-t-aligned-to | |-- include-uapi-linux-sctp.h:error:sspp_addr-offset-in-struct-sctp_setpeerprim-isn-t-aligned-to | |-- mm-memory_hotplug.c:warning:rollback_node_hotadd-defined-but-not-used | |-- mm-memory_hotplug.c:warning:unused-variable-start_pfn | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- arm64-allnoconfig | |-- kernel-sched-core.c:error:root_task_group-undeclared-(first-use-in-this-function) | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- arm64-randconfig-001-20250704 | |-- mm-memory_hotplug.c:warning:rollback_node_hotadd-defined-but-not-used | |-- mm-memory_hotplug.c:warning:unused-variable-start_pfn | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- arm64-randconfig-002-20250704 | |-- mm-memory_hotplug.c:warning:rollback_node_hotadd-defined-but-not-used | |-- mm-memory_hotplug.c:warning:unused-variable-start_pfn | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack | |-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- arm64-randconfig-004-20250702 | |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack | `-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test |-- arm64-randconfig-004-20250704 | |-- drivers-net-can-usb-kvaser_usb-kvaser_usb_hydra.c:warning:new_state-may-be-used-uninitialized-in-this-function | |-- drivers-net-ethernet-agere-et131x.c:warning:reg-may-be-used-uninitialized-in-this-function | |-- drivers-net-wireless-mediatek-mt76-mt76x2_eeprom.c:warning:data-may-be-used-uninitialized-in-this-function | |-- drivers-net-wireless-rsi-rsi_91x_sdio.c:warning:data-may-be-used-uninitialized-in-this-function | |-- drivers-net-wireless-rsi-rsi_91x_sdio.c:warning:resp-may-be-used-uninitialized-in-this-function | |-- include-scsi-scsi_cmnd.h:warning:scsi_cmnd-may-be-used-uninitialized-in-this-function | |-- kernel-time-posix-cpu-timers.c:warning:now-may-be-used-uninitialized-in-this-function | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test | |-- mm-vmalloc.c:warning:variable-start-set-but-not-used | `-- net-9p-client.c:warning:type-may-be-used-uninitialized-in-this-function |-- x86_64-allnoconfig | |-- mm-mmu_gather.o:warning:objtool:missing-symbol-for-section-.text | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-vmalloc.c:warning:variable-start-set-but-not-used | `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled-Werror-Wimplicit-function-declaration |-- x86_64-allyesconfig | |-- mm-memory.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-cgp_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type | |-- mm-memory_hotplug.c:warning:unused-variable-start_pfn | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- x86_64-buildonly-randconfig-001-20250401 | `-- drivers-nvdimm-label.o:warning:objtool:nd_blk_namespace_label_update:unreachable-instruction |-- x86_64-buildonly-randconfig-001-20250704 | |-- kernel-sched-core.c:error:use-of-undeclared-identifier-root_task_group | |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool | |-- mm-memory.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-cgp_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-vmalloc.c:warning:variable-start-set-but-not-used | `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled-Werror-Wimplicit-function-declaration |-- x86_64-buildonly-randconfig-003-20250207 | `-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool |-- x86_64-buildonly-randconfig-003-20250704 | |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool | |-- mm-memory.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-cgp_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type | |-- mm-mmu_gather.o:warning:objtool:missing-symbol-for-section-.text | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-page_owner.o:warning:objtool:missing-symbol-for-section-.text.unlikely. | |-- mm-vmalloc.c:warning:variable-start-set-but-not-used | `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled-Werror-Wimplicit-function-declaration |-- x86_64-buildonly-randconfig-004-20250704 | |-- kernel-hung_task.c:error:use-of-undeclared-identifier-sysctl_hung_task_all_cpu_backtrace | |-- mm-memcontrol.c:warning:no-previous-prototype-for-function-dhugetlb_pool_is_free | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-vmalloc.c:warning:variable-start-set-but-not-used | `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled-Werror-Wimplicit-function-declaration |-- x86_64-buildonly-randconfig-005-20241216 | `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled-Werror-Wimplicit-function-declaration |-- x86_64-buildonly-randconfig-005-20250704 | |-- kernel-sched-core.c:error:use-of-undeclared-identifier-root_task_group | |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool | |-- mm-memory.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-cgp_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- x86_64-buildonly-randconfig-006-20250620 | `-- kernel-sched-core.c:error:use-of-undeclared-identifier-root_task_group |-- x86_64-defconfig | |-- include-asm-generic-bug.h:warning:mcu_ctrl-may-be-used-uninitialized-in-this-function | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- x86_64-randconfig-101-20241223 | `-- fs-ext4-mballoc.o:warning:objtool:ext4_mb_complex_scan_group:unreachable-instruction |-- x86_64-randconfig-102-20250408 | `-- block-blk-throttle.c:preceding-lock-on-line |-- x86_64-randconfig-103-20250219 | |-- kernel-sched-debug.c:error:no-member-named-nr_wakeups_force_preferred_cpus-in-struct-dyn_affinity_stats | `-- kernel-sched-debug.c:error:no-member-named-nr_wakeups_preferred_cpus-in-struct-dyn_affinity_stats |-- x86_64-randconfig-103-20250305 | `-- drivers-gpu-drm-amd-amdgpu-amdgpu_ids.o:warning:objtool:amdgpu_vmid_grab:unreachable-instruction |-- x86_64-randconfig-122-20241226 | `-- fs-debugfs-file.o:warning:objtool:full_proxy_open:unreachable-instruction |-- x86_64-randconfig-161-20250705 | |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool | |-- mm-memory.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-cgp_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type | |-- mm-memory_hotplug.c:warning:unused-variable-start_pfn | |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page | `-- mm-vmalloc.c:warning:variable-start-set-but-not-used |-- x86_64-randconfig-r112-20250311 | |-- mm-debug.c:warning:format-specifies-type-int-but-the-argument-has-type-unsigned-long | |-- mm-debug.c:warning:format-specifies-type-unsigned-long-but-the-argument-has-type-const-unsigned-long | |-- mm-debug.c:warning:format-specifies-type-void-but-the-argument-has-type-int | `-- mm-debug.c:warning:more-conversions-than-data-arguments `-- x86_64-rhel-9.4-rust |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool |-- mm-memcontrol.c:warning:no-previous-prototype-for-function-dhugetlb_pool_is_free |-- mm-memory.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-cgp_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type |-- mm-memory_hotplug.c:warning:unused-variable-start_pfn |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page `-- mm-vmalloc.c:warning:variable-start-set-but-not-used elapsed time: 724m configs tested: 17 configs skipped: 114 tested configs: arm64 allmodconfig gcc-15.1.0 arm64 allnoconfig gcc-15.1.0 arm64 randconfig-001-20250704 gcc-14.3.0 arm64 randconfig-002-20250704 gcc-13.4.0 arm64 randconfig-003-20250704 gcc-5.5.0 arm64 randconfig-004-20250704 gcc-10.5.0 x86_64 alldefconfig gcc-12 x86_64 allnoconfig clang-20 x86_64 allyesconfig clang-20 x86_64 buildonly-randconfig-001-20250704 clang-20 x86_64 buildonly-randconfig-002-20250704 gcc-12 x86_64 buildonly-randconfig-003-20250704 clang-20 x86_64 buildonly-randconfig-004-20250704 clang-20 x86_64 buildonly-randconfig-005-20250704 clang-20 x86_64 buildonly-randconfig-006-20250704 gcc-12 x86_64 defconfig gcc-11 x86_64 rhel-9.4-rust clang-21 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 2464/2464] include/linux/fortify-string.h:65:29: warning: '__builtin_strcpy' source argument is the same as destination
by kernel test robot 05 Jul '25

05 Jul '25
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: 016a2eb38be5e29bea5011bd5fed627886f59f65 commit: f04c0f3eb9b49427c273cd3e4d5a2ff895855b4b [2464/2464] make OPTIMIZE_INLINING config editable config: arm64-randconfig-001-20250705 (https://download.01.org/0day-ci/archive/20250705/202507050218.NEdtvW5W-lkp@…) compiler: aarch64-linux-gcc (GCC) 10.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250705/202507050218.NEdtvW5W-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/202507050218.NEdtvW5W-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from include/linux/string.h:294, from include/linux/bitmap.h:11, from include/linux/cpumask.h:12, from include/linux/mm_types_task.h:14, from include/linux/mm_types.h:5, from include/linux/buildid.h:5, from include/linux/kallsyms.h:10, from kernel/kallsyms.c:15: kernel/kallsyms.c: In function '__sprint_symbol.constprop': >> include/linux/fortify-string.h:65:29: warning: '__builtin_strcpy' source argument is the same as destination [-Wrestrict] 65 | #define __underlying_strcpy __builtin_strcpy | ^ include/linux/fortify-string.h:794:10: note: in expansion of macro '__underlying_strcpy' 794 | return __underlying_strcpy(p, q); | ^~~~~~~~~~~~~~~~~~~ vim +/__builtin_strcpy +65 include/linux/fortify-string.h 78a498c3a227f2 Alexander Potapenko 2022-10-24 61 78a498c3a227f2 Alexander Potapenko 2022-10-24 62 #define __underlying_memchr __builtin_memchr 78a498c3a227f2 Alexander Potapenko 2022-10-24 63 #define __underlying_memcmp __builtin_memcmp a28a6e860c6cf2 Francis Laniel 2021-02-25 64 #define __underlying_strcat __builtin_strcat a28a6e860c6cf2 Francis Laniel 2021-02-25 @65 #define __underlying_strcpy __builtin_strcpy a28a6e860c6cf2 Francis Laniel 2021-02-25 66 #define __underlying_strlen __builtin_strlen a28a6e860c6cf2 Francis Laniel 2021-02-25 67 #define __underlying_strncat __builtin_strncat a28a6e860c6cf2 Francis Laniel 2021-02-25 68 #define __underlying_strncpy __builtin_strncpy a28a6e860c6cf2 Francis Laniel 2021-02-25 69 #endif a28a6e860c6cf2 Francis Laniel 2021-02-25 70 :::::: The code at line 65 was first introduced by commit :::::: a28a6e860c6cf231cf3c5171c75c342adcd00406 string.h: move fortified functions definitions in a dedicated header. :::::: TO: Francis Laniel <laniel_francis(a)privacyrequired.com> :::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[PATCH openEuler-1.0-LTS] PCI/GPU: fix hard lockup in vga_arb_release
by Zhang Yuwei 04 Jul '25

04 Jul '25
Offering: HULK hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/ICCT8Z CVE: NA -------------------------------- Commit deb2d2ecd43df ("PCI/GPU: implement VGA arbitration on Linux") In the vga_arb_release(), it iterates through the vga_arb_user_card array held by the user to release io_cnt and mem_cnt resources one by one. If the values of io_cnt or mem_cnt are excessively large, prolonged CPU occupation may occur, leading to hard lock. lock protection is only added when deleting entries from the list, also add cond_resched() during the release of io_cnt and mem_cnt. Fixes: 281327c99bca ("lib: make bitmap_parselist_user() a wrapper on bitmap_parselist()") Reviewed-by: Chen Jun <chenjun102(a)huawei.com> Signed-off-by: Zhang Yuwei <zhangyuwei20(a)huawei.com> --- drivers/gpu/vga/vgaarb.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/vga/vgaarb.c b/drivers/gpu/vga/vgaarb.c index c61b04555779..db21ae342bd8 100644 --- a/drivers/gpu/vga/vgaarb.c +++ b/drivers/gpu/vga/vgaarb.c @@ -1312,18 +1312,22 @@ static int vga_arb_release(struct inode *inode, struct file *file) spin_lock_irqsave(&vga_user_lock, flags); list_del(&priv->list); + spin_unlock_irqrestore(&vga_user_lock, flags); for (i = 0; i < MAX_USER_CARDS; i++) { uc = &priv->cards[i]; if (uc->pdev == NULL) continue; vgaarb_dbg(&uc->pdev->dev, "uc->io_cnt == %d, uc->mem_cnt == %d\n", uc->io_cnt, uc->mem_cnt); - while (uc->io_cnt--) + while (uc->io_cnt--) { vga_put(uc->pdev, VGA_RSRC_LEGACY_IO); - while (uc->mem_cnt--) + cond_resched(); + } + while (uc->mem_cnt--) { vga_put(uc->pdev, VGA_RSRC_LEGACY_MEM); + cond_resched(); + } } - spin_unlock_irqrestore(&vga_user_lock, flags); kfree(priv); -- 2.22.0
2 1
0 0
[PATCH OLK-6.6] net: openvswitch: Fix the dead loop of MPLS parse
by Zhang Kunbo 04 Jul '25

04 Jul '25
From: Faicker Mo <faicker.mo(a)zenlayer.com> stable inclusion from stable-v6.6.94 commit 8ebcd311b4866ab911d1445ead08690e67f0c488 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICJT4G CVE: CVE-2025-38146 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- [ Upstream commit 0bdc924bfb319fb10d1113cbf091fc26fb7b1f99 ] The unexpected MPLS packet may not end with the bottom label stack. When there are many stacks, The label count value has wrapped around. A dead loop occurs, soft lockup/CPU stuck finally. stack backtrace: UBSAN: array-index-out-of-bounds in /build/linux-0Pa0xK/linux-5.15.0/net/openvswitch/flow.c:662:26 index -1 is out of range for type '__be32 [3]' CPU: 34 PID: 0 Comm: swapper/34 Kdump: loaded Tainted: G OE 5.15.0-121-generic #131-Ubuntu Hardware name: Dell Inc. PowerEdge C6420/0JP9TF, BIOS 2.12.2 07/14/2021 Call Trace: <IRQ> show_stack+0x52/0x5c dump_stack_lvl+0x4a/0x63 dump_stack+0x10/0x16 ubsan_epilogue+0x9/0x36 __ubsan_handle_out_of_bounds.cold+0x44/0x49 key_extract_l3l4+0x82a/0x840 [openvswitch] ? kfree_skbmem+0x52/0xa0 key_extract+0x9c/0x2b0 [openvswitch] ovs_flow_key_extract+0x124/0x350 [openvswitch] ovs_vport_receive+0x61/0xd0 [openvswitch] ? kernel_init_free_pages.part.0+0x4a/0x70 ? get_page_from_freelist+0x353/0x540 netdev_port_receive+0xc4/0x180 [openvswitch] ? netdev_port_receive+0x180/0x180 [openvswitch] netdev_frame_hook+0x1f/0x40 [openvswitch] __netif_receive_skb_core.constprop.0+0x23a/0xf00 __netif_receive_skb_list_core+0xfa/0x240 netif_receive_skb_list_internal+0x18e/0x2a0 napi_complete_done+0x7a/0x1c0 bnxt_poll+0x155/0x1c0 [bnxt_en] __napi_poll+0x30/0x180 net_rx_action+0x126/0x280 ? bnxt_msix+0x67/0x80 [bnxt_en] handle_softirqs+0xda/0x2d0 irq_exit_rcu+0x96/0xc0 common_interrupt+0x8e/0xa0 </IRQ> Fixes: fbdcdd78da7c ("Change in Openvswitch to support MPLS label depth of 3 in ingress direction") Signed-off-by: Faicker Mo <faicker.mo(a)zenlayer.com> Acked-by: Ilya Maximets <i.maximets(a)ovn.org> Reviewed-by: Aaron Conole <aconole(a)redhat.com> Link: https://patch.msgid.link/259D3404-575D-4A6D-B263-1DF59A67CF89@zenlayer.com Signed-off-by: Paolo Abeni <pabeni(a)redhat.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zhang Kunbo <zhangkunbo(a)huawei.com> --- net/openvswitch/flow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/openvswitch/flow.c b/net/openvswitch/flow.c index 8a848ce72e29..b80bd3a90773 100644 --- a/net/openvswitch/flow.c +++ b/net/openvswitch/flow.c @@ -788,7 +788,7 @@ static int key_extract_l3l4(struct sk_buff *skb, struct sw_flow_key *key) memset(&key->ipv4, 0, sizeof(key->ipv4)); } } else if (eth_p_mpls(key->eth.type)) { - u8 label_count = 1; + size_t label_count = 1; memset(&key->mpls, 0, sizeof(key->mpls)); skb_set_inner_network_header(skb, skb->mac_len); -- 2.34.1
2 1
0 0
[PATCH OLK-5.10] net: openvswitch: Fix the dead loop of MPLS parse
by Zhang Kunbo 04 Jul '25

04 Jul '25
From: Faicker Mo <faicker.mo(a)zenlayer.com> stable inclusion from stable-v5.10.239 commit 4b9a086eedc1fddae632310386098c12155e3d0a category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICJT4G CVE: CVE-2025-38146 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- [ Upstream commit 0bdc924bfb319fb10d1113cbf091fc26fb7b1f99 ] The unexpected MPLS packet may not end with the bottom label stack. When there are many stacks, The label count value has wrapped around. A dead loop occurs, soft lockup/CPU stuck finally. stack backtrace: UBSAN: array-index-out-of-bounds in /build/linux-0Pa0xK/linux-5.15.0/net/openvswitch/flow.c:662:26 index -1 is out of range for type '__be32 [3]' CPU: 34 PID: 0 Comm: swapper/34 Kdump: loaded Tainted: G OE 5.15.0-121-generic #131-Ubuntu Hardware name: Dell Inc. PowerEdge C6420/0JP9TF, BIOS 2.12.2 07/14/2021 Call Trace: <IRQ> show_stack+0x52/0x5c dump_stack_lvl+0x4a/0x63 dump_stack+0x10/0x16 ubsan_epilogue+0x9/0x36 __ubsan_handle_out_of_bounds.cold+0x44/0x49 key_extract_l3l4+0x82a/0x840 [openvswitch] ? kfree_skbmem+0x52/0xa0 key_extract+0x9c/0x2b0 [openvswitch] ovs_flow_key_extract+0x124/0x350 [openvswitch] ovs_vport_receive+0x61/0xd0 [openvswitch] ? kernel_init_free_pages.part.0+0x4a/0x70 ? get_page_from_freelist+0x353/0x540 netdev_port_receive+0xc4/0x180 [openvswitch] ? netdev_port_receive+0x180/0x180 [openvswitch] netdev_frame_hook+0x1f/0x40 [openvswitch] __netif_receive_skb_core.constprop.0+0x23a/0xf00 __netif_receive_skb_list_core+0xfa/0x240 netif_receive_skb_list_internal+0x18e/0x2a0 napi_complete_done+0x7a/0x1c0 bnxt_poll+0x155/0x1c0 [bnxt_en] __napi_poll+0x30/0x180 net_rx_action+0x126/0x280 ? bnxt_msix+0x67/0x80 [bnxt_en] handle_softirqs+0xda/0x2d0 irq_exit_rcu+0x96/0xc0 common_interrupt+0x8e/0xa0 </IRQ> Fixes: fbdcdd78da7c ("Change in Openvswitch to support MPLS label depth of 3 in ingress direction") Signed-off-by: Faicker Mo <faicker.mo(a)zenlayer.com> Acked-by: Ilya Maximets <i.maximets(a)ovn.org> Reviewed-by: Aaron Conole <aconole(a)redhat.com> Link: https://patch.msgid.link/259D3404-575D-4A6D-B263-1DF59A67CF89@zenlayer.com Signed-off-by: Paolo Abeni <pabeni(a)redhat.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zhang Kunbo <zhangkunbo(a)huawei.com> --- net/openvswitch/flow.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/openvswitch/flow.c b/net/openvswitch/flow.c index 9bad601c7fe8..94531289ed26 100644 --- a/net/openvswitch/flow.c +++ b/net/openvswitch/flow.c @@ -638,7 +638,7 @@ static int key_extract_l3l4(struct sk_buff *skb, struct sw_flow_key *key) memset(&key->ipv4, 0, sizeof(key->ipv4)); } } else if (eth_p_mpls(key->eth.type)) { - u8 label_count = 1; + size_t label_count = 1; memset(&key->mpls, 0, sizeof(key->mpls)); skb_set_inner_network_header(skb, skb->mac_len); -- 2.34.1
2 1
0 0
[PATCH OLK-5.10] dma-buf: insert memory barrier before updating num_fences
by Bowen You 04 Jul '25

04 Jul '25
From: Hyejeong Choi <hjeong.choi(a)samsung.com> mainline inclusion from mainline-v6.12-rc1 commit 72c7d62583ebce7baeb61acce6057c361f73be4a category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICJTDA CVE: CVE-2025-38095 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- smp_store_mb() inserts memory barrier after storing operation. It is different with what the comment is originally aiming so Null pointer dereference can be happened if memory update is reordered. Signed-off-by: Hyejeong Choi <hjeong.choi(a)samsung.com> Fixes: a590d0fdbaa5 ("dma-buf: Update reservation shared_count after adding the new fence") CC: stable(a)vger.kernel.org Reviewed-by: Christian König <christian.koenig(a)amd.com> Link: https://lore.kernel.org/r/20250513020638.GA2329653@au1-maretx-p37.eng.sarc.… Signed-off-by: Christian König <christian.koenig(a)amd.com> Conflicts: drivers/dma-buf/dma-resv.c [Context conflict] Signed-off-by: Bowen You <youbowen2(a)huawei.com> --- drivers/dma-buf/dma-resv.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/dma-buf/dma-resv.c b/drivers/dma-buf/dma-resv.c index 1187e5e80ede..3ab9caee6527 100644 --- a/drivers/dma-buf/dma-resv.c +++ b/drivers/dma-buf/dma-resv.c @@ -290,8 +290,9 @@ void dma_resv_add_shared_fence(struct dma_resv *obj, struct dma_fence *fence) replace: RCU_INIT_POINTER(fobj->shared[i], fence); - /* pointer update must be visible before we extend the shared_count */ - smp_store_mb(fobj->shared_count, count); + /* fence update must be visible before we extend the num_fences */ + smp_wmb(); + fobj->shared_count = count; write_seqcount_end(&obj->seq); dma_fence_put(old); -- 2.34.1
2 1
0 0
[PATCH OLK-6.6] dma-buf: insert memory barrier before updating num_fences
by Bowen You 04 Jul '25

04 Jul '25
From: Hyejeong Choi <hjeong.choi(a)samsung.com> mainline inclusion from mainline-v6.12-rc1 commit 72c7d62583ebce7baeb61acce6057c361f73be4a category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICJTDA CVE: CVE-2025-38095 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- smp_store_mb() inserts memory barrier after storing operation. It is different with what the comment is originally aiming so Null pointer dereference can be happened if memory update is reordered. Signed-off-by: Hyejeong Choi <hjeong.choi(a)samsung.com> Fixes: a590d0fdbaa5 ("dma-buf: Update reservation shared_count after adding the new fence") CC: stable(a)vger.kernel.org Reviewed-by: Christian König <christian.koenig(a)amd.com> Link: https://lore.kernel.org/r/20250513020638.GA2329653@au1-maretx-p37.eng.sarc.… Signed-off-by: Christian König <christian.koenig(a)amd.com> Signed-off-by: Bowen You <youbowen2(a)huawei.com> --- drivers/dma-buf/dma-resv.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/dma-buf/dma-resv.c b/drivers/dma-buf/dma-resv.c index eb8b733065b2..9093f751f133 100644 --- a/drivers/dma-buf/dma-resv.c +++ b/drivers/dma-buf/dma-resv.c @@ -313,8 +313,9 @@ void dma_resv_add_fence(struct dma_resv *obj, struct dma_fence *fence, count++; dma_resv_list_set(fobj, i, fence, usage); - /* pointer update must be visible before we extend the num_fences */ - smp_store_mb(fobj->num_fences, count); + /* fence update must be visible before we extend the num_fences */ + smp_wmb(); + fobj->num_fences = count; } EXPORT_SYMBOL(dma_resv_add_fence); -- 2.34.1
2 1
0 0
[PATCH OLK-6.6] dma-buf: insert memory barrier before updating num_fences
by Bowen You 04 Jul '25

04 Jul '25
From: Hyejeong Choi <hjeong.choi(a)samsung.com> mainline inclusion from mainline-v6.12-rc1 commit 72c7d62583ebce7baeb61acce6057c361f73be4a category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICJTDA CVE: CVE-2025-38095 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- smp_store_mb() inserts memory barrier after storing operation. It is different with what the comment is originally aiming so Null pointer dereference can be happened if memory update is reordered. Signed-off-by: Hyejeong Choi <hjeong.choi(a)samsung.com> Fixes: a590d0fdbaa5 ("dma-buf: Update reservation shared_count after adding the new fence") CC: stable(a)vger.kernel.org Reviewed-by: Christian König <christian.koenig(a)amd.com> Link: https://lore.kernel.org/r/20250513020638.GA2329653@au1-maretx-p37.eng.sarc.… Signed-off-by: Christian König <christian.koenig(a)amd.com> Conflicts: drivers/dma-buf/dma-resv.c [Context conflict] Signed-off-by: Bowen You <youbowen2(a)huawei.com> --- drivers/dma-buf/dma-resv.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/dma-buf/dma-resv.c b/drivers/dma-buf/dma-resv.c index eb8b733065b2..9093f751f133 100644 --- a/drivers/dma-buf/dma-resv.c +++ b/drivers/dma-buf/dma-resv.c @@ -313,8 +313,9 @@ void dma_resv_add_fence(struct dma_resv *obj, struct dma_fence *fence, count++; dma_resv_list_set(fobj, i, fence, usage); - /* pointer update must be visible before we extend the num_fences */ - smp_store_mb(fobj->num_fences, count); + /* fence update must be visible before we extend the num_fences */ + smp_wmb(); + fobj->num_fences = count; } EXPORT_SYMBOL(dma_resv_add_fence); -- 2.34.1
2 1
0 0
  • ← Newer
  • 1
  • ...
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • ...
  • 1914
  • Older →

HyperKitty Powered by HyperKitty