Kernel
Threads by month
- ----- 2025 -----
- 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
- 9 participants
- 19553 discussions

[openeuler:openEuler-1.0-LTS 1473/1473] drivers/net/ethernet/huawei/hinic/hinic_lld.c:142:1: sparse: sparse: symbol 'g_hinic_chip_list' was not declared. Should it be static?
by kernel test robot 11 Mar '25
by kernel test robot 11 Mar '25
11 Mar '25
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 09e192513a17ce8324302ae595ebf001e08e13b0
commit: 6cb2e756917d122560e0c52f350682760d004eec [1473/1473] net: hinic: Add NIC Layer
config: arm64-randconfig-r132-20250309 (https://download.01.org/0day-ci/archive/20250311/202503111134.UWDl3InI-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.2.0
reproduce: (https://download.01.org/0day-ci/archive/20250311/202503111134.UWDl3InI-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/202503111134.UWDl3InI-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:142:1: sparse: sparse: symbol 'g_hinic_chip_list' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_lld.c:158:23: sparse: sparse: symbol 'g_lld_lock' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:484:31: sparse: sparse: symbol 'ver_incompat_table' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:529:5: sparse: sparse: symbol 'hinic_version_cmp' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:754:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] manufacture_id @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:754:29: sparse: expected unsigned int [usertype] manufacture_id
drivers/net/ethernet/huawei/hinic/hinic_lld.c:754:29: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:755:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] resp_code @@ got restricted __be16 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:755:24: sparse: expected unsigned short [usertype] resp_code
drivers/net/ethernet/huawei/hinic/hinic_lld.c:755:24: sparse: got restricted __be16 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:756:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] reason_code @@ got restricted __be16 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:756:26: sparse: expected unsigned short [usertype] reason_code
drivers/net/ethernet/huawei/hinic/hinic_lld.c:756:26: sparse: got restricted __be16 [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:801:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:801:16: sparse: expected unsigned int [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:801:16: sparse: got restricted __be32 [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:802:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:802:16: sparse: expected unsigned int [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:802:16: sparse: got restricted __be32 [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:803:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:803:16: sparse: expected unsigned int [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:803:16: sparse: got restricted __be32 [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:804:14: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:804:14: sparse: expected unsigned int [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:804:14: sparse: got restricted __be32 [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:842:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __be32 [usertype] ifa_address @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:842:52: sparse: expected unsigned int [usertype]
drivers/net/ethernet/huawei/hinic/hinic_lld.c:842:52: sparse: got restricted __be32 [usertype] ifa_address
drivers/net/ethernet/huawei/hinic/hinic_lld.c:881:25: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] ip_cnt @@ got restricted __be16 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:881:25: sparse: expected unsigned short [usertype] ip_cnt
drivers/net/ethernet/huawei/hinic/hinic_lld.c:881:25: sparse: got restricted __be16 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:1268:6: sparse: sparse: symbol 'hinic_get_ppf_hwdev_by_pdev' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:1539:19: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:1781:57: sparse: sparse: Using plain integer as NULL pointer
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:1824:6: sparse: sparse: symbol 'hinic_event_process' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2203:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] cfg_reg_base @@ got void [noderef] __iomem *cfg_reg_base @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2203:32: sparse: expected void *[assigned] cfg_reg_base
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2203:32: sparse: got void [noderef] __iomem *cfg_reg_base
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2204:33: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] intr_reg_base @@ got void [noderef] __iomem *intr_reg_base @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2204:33: sparse: expected void *[assigned] intr_reg_base
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2204:33: sparse: got void [noderef] __iomem *intr_reg_base
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2205:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] db_base @@ got void [noderef] __iomem *db_base @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2205:27: sparse: expected void *[assigned] db_base
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2205:27: sparse: got void [noderef] __iomem *db_base
>> drivers/net/ethernet/huawei/hinic/hinic_lld.c:2207:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] dwqe_mapping @@ got void [noderef] __iomem *dwqe_mapping @@
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2207:32: sparse: expected void *[assigned] dwqe_mapping
drivers/net/ethernet/huawei/hinic/hinic_lld.c:2207:32: sparse: got void [noderef] __iomem *dwqe_mapping
drivers/net/ethernet/huawei/hinic/hinic_lld.c:529:5: warning: no previous prototype for 'hinic_version_cmp' [-Wmissing-prototypes]
529 | int hinic_version_cmp(char *ver1, char *ver2)
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_lld.c:1268:7: warning: no previous prototype for 'hinic_get_ppf_hwdev_by_pdev' [-Wmissing-prototypes]
1268 | void *hinic_get_ppf_hwdev_by_pdev(struct pci_dev *pdev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_lld.c:1390:5: warning: no previous prototype for 'hinic_get_card_func_info_by_card_name' [-Wmissing-prototypes]
1390 | int hinic_get_card_func_info_by_card_name(char *chip_name,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_lld.c:1824:6: warning: no previous prototype for 'hinic_event_process' [-Wmissing-prototypes]
1824 | void hinic_event_process(void *adapter, struct hinic_event_info *event)
| ^~~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/huawei/hinic/hinic_qp.c:49:26: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_qp.c:62:28: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_qp.c:70:18: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/huawei/hinic/hinic_qp.c:85:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] status @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_qp.c:85:21: sparse: expected unsigned int [usertype] status
drivers/net/ethernet/huawei/hinic/hinic_qp.c:85:21: sparse: got restricted __be32 [usertype]
drivers/net/ethernet/huawei/hinic/hinic_qp.c:96:20: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_qp.c:107:24: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_qp.c:114:23: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_qp.c:122:23: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_qp.c:191:33: sparse: sparse: cast to restricted __be32
--
>> drivers/net/ethernet/huawei/hinic/hinic_rx.c:152:44: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] addr_high @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_rx.c:152:44: sparse: expected unsigned int [usertype] addr_high
drivers/net/ethernet/huawei/hinic/hinic_rx.c:152:44: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_rx.c:154:43: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] addr_low @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_rx.c:154:43: sparse: expected unsigned int [usertype] addr_low
drivers/net/ethernet/huawei/hinic/hinic_rx.c:154:43: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_rx.c:174:6: sparse: sparse: symbol 'hinic_rx_free_buffers' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_rx.c:568:24: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/huawei/hinic/hinic_rx.c:606:6: sparse: sparse: symbol 'rx_pass_super_cqe' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_rx.c:680:26: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_rx.c:688:28: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_rx.c:689:28: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_rx.c:709:45: sparse: sparse: cast to restricted __be32
In file included from include/linux/sctp.h:57,
from drivers/net/ethernet/huawei/hinic/hinic_rx.c:30:
include/uapi/linux/sctp.h:390:1: warning: alignment 4 of 'struct sctp_paddr_change' is less than 8 [-Wpacked-not-aligned]
390 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:719:1: warning: alignment 4 of 'struct sctp_setpeerprim' is less than 8 [-Wpacked-not-aligned]
719 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:718:33: warning: 'sspp_addr' offset 4 in 'struct sctp_setpeerprim' isn't aligned to 8 [-Wpacked-not-aligned]
718 | struct sockaddr_storage sspp_addr;
| ^~~~~~~~~
include/uapi/linux/sctp.h:732:1: warning: alignment 4 of 'struct sctp_prim' is less than 8 [-Wpacked-not-aligned]
732 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:731:33: warning: 'ssp_addr' offset 4 in 'struct sctp_prim' isn't aligned to 8 [-Wpacked-not-aligned]
731 | struct sockaddr_storage ssp_addr;
| ^~~~~~~~
include/uapi/linux/sctp.h:783:1: warning: alignment 4 of 'struct sctp_paddrparams' is less than 8 [-Wpacked-not-aligned]
783 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:775:33: warning: 'spp_address' offset 4 in 'struct sctp_paddrparams' isn't aligned to 8 [-Wpacked-not-aligned]
775 | struct sockaddr_storage spp_address;
| ^~~~~~~~~~~
include/uapi/linux/sctp.h:896:1: warning: alignment 4 of 'struct sctp_paddrinfo' is less than 8 [-Wpacked-not-aligned]
896 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:890:33: warning: 'spinfo_address' offset 4 in 'struct sctp_paddrinfo' isn't aligned to 8 [-Wpacked-not-aligned]
890 | struct sockaddr_storage spinfo_address;
| ^~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_rx.c:174:6: warning: no previous prototype for 'hinic_rx_free_buffers' [-Wmissing-prototypes]
174 | void hinic_rx_free_buffers(struct hinic_rxq *rxq)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_rx.c:548:5: warning: no previous prototype for 'recv_one_pkt' [-Wmissing-prototypes]
548 | int recv_one_pkt(struct hinic_rxq *rxq, struct hinic_rq_cqe *rx_cqe,
| ^~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_rx.c:606:6: warning: no previous prototype for 'rx_pass_super_cqe' [-Wmissing-prototypes]
606 | void rx_pass_super_cqe(struct hinic_rxq *rxq, u32 index, u32 pkt_num,
| ^~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:593:35: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_tx.c:594:35: sparse: sparse: cast to restricted __be32
drivers/net/ethernet/huawei/hinic/hinic_tx.c:595:35: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:1051:5: sparse: sparse: symbol 'hinic_setup_tx_wqe' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:1230:5: sparse: sparse: symbol 'hinic_stop_sq' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] hi_addr @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: expected unsigned int [usertype] hi_addr
drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] lo_addr @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: expected unsigned int [usertype] lo_addr
drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] len @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: expected unsigned int [usertype] len
drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] hi_addr @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: expected unsigned int [usertype] hi_addr
drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] lo_addr @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: expected unsigned int [usertype] lo_addr
drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] len @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: expected unsigned int [usertype] len
drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] hi_addr @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: expected unsigned int [usertype] hi_addr
drivers/net/ethernet/huawei/hinic/hinic_tx.c:109:28: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] lo_addr @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: expected unsigned int [usertype] lo_addr
drivers/net/ethernet/huawei/hinic/hinic_tx.c:110:28: sparse: got restricted __be32 [usertype]
>> drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] len @@ got restricted __be32 [usertype] @@
drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: expected unsigned int [usertype] len
drivers/net/ethernet/huawei/hinic/hinic_tx.c:111:25: sparse: got restricted __be32 [usertype]
In file included from include/linux/sctp.h:57,
from drivers/net/ethernet/huawei/hinic/hinic_tx.c:26:
include/uapi/linux/sctp.h:390:1: warning: alignment 4 of 'struct sctp_paddr_change' is less than 8 [-Wpacked-not-aligned]
390 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:719:1: warning: alignment 4 of 'struct sctp_setpeerprim' is less than 8 [-Wpacked-not-aligned]
719 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:718:33: warning: 'sspp_addr' offset 4 in 'struct sctp_setpeerprim' isn't aligned to 8 [-Wpacked-not-aligned]
718 | struct sockaddr_storage sspp_addr;
| ^~~~~~~~~
include/uapi/linux/sctp.h:732:1: warning: alignment 4 of 'struct sctp_prim' is less than 8 [-Wpacked-not-aligned]
732 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:731:33: warning: 'ssp_addr' offset 4 in 'struct sctp_prim' isn't aligned to 8 [-Wpacked-not-aligned]
731 | struct sockaddr_storage ssp_addr;
| ^~~~~~~~
include/uapi/linux/sctp.h:783:1: warning: alignment 4 of 'struct sctp_paddrparams' is less than 8 [-Wpacked-not-aligned]
783 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:775:33: warning: 'spp_address' offset 4 in 'struct sctp_paddrparams' isn't aligned to 8 [-Wpacked-not-aligned]
775 | struct sockaddr_storage spp_address;
| ^~~~~~~~~~~
include/uapi/linux/sctp.h:896:1: warning: alignment 4 of 'struct sctp_paddrinfo' is less than 8 [-Wpacked-not-aligned]
896 | } __attribute__((packed, aligned(4)));
| ^
include/uapi/linux/sctp.h:890:33: warning: 'spinfo_address' offset 4 in 'struct sctp_paddrinfo' isn't aligned to 8 [-Wpacked-not-aligned]
890 | struct sockaddr_storage spinfo_address;
| ^~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_tx.c:1051:5: warning: no previous prototype for 'hinic_setup_tx_wqe' [-Wmissing-prototypes]
1051 | int hinic_setup_tx_wqe(struct hinic_txq *txq)
| ^~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_tx.c:1230:5: warning: no previous prototype for 'hinic_stop_sq' [-Wmissing-prototypes]
1230 | int hinic_stop_sq(struct hinic_txq *txq)
| ^~~~~~~~~~~~~
--
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:65:7: sparse: sparse: symbol 'dbgtool_dev_id' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:66:13: sparse: sparse: symbol 'dbgtool_chr_dev' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:69:14: sparse: sparse: symbol 'dbgtool_d_class' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:72:5: sparse: sparse: symbol 'g_dbgtool_init_flag' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:73:5: sparse: sparse: symbol 'g_dbgtool_ref_cnt' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:176:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got unsigned char [usertype] *cmd @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:176:51: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:176:51: sparse: got unsigned char [usertype] *cmd
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:190:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *ack @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:190:44: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:190:44: sparse: got void *ack
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:135:6: sparse: sparse: symbol 'dbgtool_knl_api_cmd_read' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:238:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got unsigned char [usertype] *cmd @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:238:51: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:238:51: sparse: got unsigned char [usertype] *cmd
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:207:6: sparse: sparse: symbol 'dbgtool_knl_api_cmd_write' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:339:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got struct pf_dev_info *dev_info @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:339:37: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:339:37: sparse: got struct pf_dev_info *dev_info
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:299:6: sparse: sparse: symbol 'dbgtool_knl_pf_dev_info_get' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:357:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got struct ffm_record_info *ffm_rd @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:357:37: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:357:37: sparse: got struct ffm_record_info *ffm_rd
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:353:6: sparse: sparse: symbol 'dbgtool_knl_ffm_info_rd' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:371:6: sparse: sparse: symbol 'dbgtool_knl_ffm_info_clr' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:423:54: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void *buf_in @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:423:54: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:423:54: sparse: got void *buf_in
>> drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:446:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got unsigned short [usertype] *out_size @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:446:44: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:446:44: sparse: got unsigned short [usertype] *out_size
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:453:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *buf_out @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:453:44: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:453:44: sparse: got void *buf_out
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:386:6: sparse: sparse: symbol 'dbgtool_knl_msg_to_up' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:508:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void * @@
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:508:37: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:508:37: sparse: got void *
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:495:6: sparse: sparse: symbol 'dbgtool_knl_unlocked_ioctl' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:573:6: sparse: sparse: symbol 'ffm_intr_msg_record' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:135:6: warning: no previous prototype for 'dbgtool_knl_api_cmd_read' [-Wmissing-prototypes]
135 | long dbgtool_knl_api_cmd_read(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:207:6: warning: no previous prototype for 'dbgtool_knl_api_cmd_write' [-Wmissing-prototypes]
207 | long dbgtool_knl_api_cmd_write(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:299:6: warning: no previous prototype for 'dbgtool_knl_pf_dev_info_get' [-Wmissing-prototypes]
299 | long dbgtool_knl_pf_dev_info_get(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:353:6: warning: no previous prototype for 'dbgtool_knl_ffm_info_rd' [-Wmissing-prototypes]
353 | long dbgtool_knl_ffm_info_rd(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:371:6: warning: no previous prototype for 'dbgtool_knl_ffm_info_clr' [-Wmissing-prototypes]
371 | long dbgtool_knl_ffm_info_clr(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:386:6: warning: no previous prototype for 'dbgtool_knl_msg_to_up' [-Wmissing-prototypes]
386 | long dbgtool_knl_msg_to_up(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:495:6: warning: no previous prototype for 'dbgtool_knl_unlocked_ioctl' [-Wmissing-prototypes]
495 | long dbgtool_knl_unlocked_ioctl(struct file *pfile,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:573:6: warning: no previous prototype for 'ffm_intr_msg_record' [-Wmissing-prototypes]
573 | void ffm_intr_msg_record(void *handle, void *buf_in, u16 in_size,
| ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:498: warning: Function parameter or member 'arg' not described in 'dbgtool_knl_unlocked_ioctl'
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:575: warning: Function parameter or member 'in_size' not described in 'ffm_intr_msg_record'
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:575: warning: Function parameter or member 'out_size' not described in 'ffm_intr_msg_record'
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:664: warning: Function parameter or member 'vhwdev' not described in 'dbgtool_knl_init'
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:664: warning: Excess function parameter 'hwdev' description in 'dbgtool_knl_init'
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:792: warning: Function parameter or member 'vhwdev' not described in 'dbgtool_knl_deinit'
drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c:792: warning: Excess function parameter 'hwdev' description in 'dbgtool_knl_deinit'
--
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:104:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void *in_buff @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:104:43: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:104:43: sparse: got void *in_buff
>> drivers/net/ethernet/huawei/hinic/hinic_nictool.c:162:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *out_buf @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:162:32: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:162:32: sparse: got void *out_buf
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1070:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *out_buf @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1070:32: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1070:32: sparse: got void *out_buf
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1153:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *out_buf @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1153:32: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1153:32: sparse: got void *out_buf
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1363:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void * @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1363:35: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1363:35: sparse: got void *
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1492:25: sparse: sparse: symbol 'sm_module_cmd_handle' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1663:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *out_buf @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1663:32: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1663:32: sparse: got void *out_buf
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1750:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void *out_buf @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1750:32: sparse: expected void [noderef] __user *to
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1750:32: sparse: got void *out_buf
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1756:5: sparse: sparse: symbol 'send_to_service_driver' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1871:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void * @@
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1871:38: sparse: expected void const [noderef] __user *from
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1871:38: sparse: got void *
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1964:5: sparse: sparse: symbol 'if_nictool_exist' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1756:5: warning: no previous prototype for 'send_to_service_driver' [-Wmissing-prototypes]
1756 | int send_to_service_driver(struct msg_module *nt_msg, void *buf_in,
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_nictool.c:1964:5: warning: no previous prototype for 'if_nictool_exist' [-Wmissing-prototypes]
1964 | int if_nictool_exist(void)
| ^~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/huawei/hinic/hinic_dcb.c:62:6: sparse: sparse: symbol 'hinic_dcb_config_init' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_dcb.c:226:6: sparse: sparse: symbol 'hinic_set_prio_tc_map' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_dcb.c:825:4: sparse: sparse: symbol 'hinic_dcbnl_set_all' was not declared. Should it be static?
>> drivers/net/ethernet/huawei/hinic/hinic_dcb.c:1059:5: sparse: sparse: symbol '__set_cos_up_map' was not declared. Should it be static?
drivers/net/ethernet/huawei/hinic/hinic_dcb.c:62:6: warning: no previous prototype for 'hinic_dcb_config_init' [-Wmissing-prototypes]
62 | void hinic_dcb_config_init(struct hinic_nic_dev *nic_dev,
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dcb.c:226:6: warning: no previous prototype for 'hinic_set_prio_tc_map' [-Wmissing-prototypes]
226 | void hinic_set_prio_tc_map(struct hinic_nic_dev *nic_dev)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dcb.c:825:4: warning: no previous prototype for 'hinic_dcbnl_set_all' [-Wmissing-prototypes]
825 | u8 hinic_dcbnl_set_all(struct net_device *netdev)
| ^~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/huawei/hinic/hinic_dcb.c:1059:5: warning: no previous prototype for '__set_cos_up_map' [-Wmissing-prototypes]
1059 | int __set_cos_up_map(struct hinic_nic_dev *nic_dev, u8 *cos_up)
| ^~~~~~~~~~~~~~~~
vim +/g_hinic_chip_list +142 drivers/net/ethernet/huawei/hinic/hinic_lld.c
746ea35981b1f77 Xue 2019-01-30 139
746ea35981b1f77 Xue 2019-01-30 140 #define MAX_CARD_ID 64
746ea35981b1f77 Xue 2019-01-30 141 static u64 card_bit_map;
746ea35981b1f77 Xue 2019-01-30 @142 LIST_HEAD(g_hinic_chip_list);
746ea35981b1f77 Xue 2019-01-30 143 struct hinic_uld_info g_uld_info[SERVICE_T_MAX] = { {0} };
746ea35981b1f77 Xue 2019-01-30 144 static const char *s_uld_name[SERVICE_T_MAX] = {
746ea35981b1f77 Xue 2019-01-30 145 "nic", "ovs", "roce", "toe", "iwarp", "fc", "fcoe", };
746ea35981b1f77 Xue 2019-01-30 146
:::::: The code at line 142 was first introduced by commit
:::::: 746ea35981b1f77e988d48642409d73f0470b3eb net: hinic: Add Hardware Abstract Layer
:::::: TO: Xue <xuechaojing(a)huawei.com>
:::::: CC: Xie XiuQi <xiexiuqi(a)huawei.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:OLK-5.10] BUILD REGRESSION 20ecc2fe65037adab573d12c528d9883e738fa8a
by kernel test robot 11 Mar '25
by kernel test robot 11 Mar '25
11 Mar '25
tree/branch: https://gitee.com/openeuler/kernel.git OLK-5.10
branch HEAD: 20ecc2fe65037adab573d12c528d9883e738fa8a !15428 ubi: fastmap: wl: Schedule fm_work if wear-leveling pool is empty
Error/Warning ids grouped by kconfigs:
recent_errors
|-- arm64-allnoconfig
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-__zone_set_pageset_high_and_batch
|-- x86_64-allnoconfig
| |-- Warning:arch-x86-kernel-cpu-resctrl-monitor.c-references-a-file-that-doesn-t-exist:Documentation-x86-resctrl.rst
| |-- drivers-iommu-sw64-sunway_iommu_v2.c:linux-pci.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-linux-ps3_base.c:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-linux-ps3_base.c:ps3_driver_log.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-linux-ps3_base.c:ps3_scsi_cmd_err.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-linux-ps3_cli.c:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-linux-ps3_driver_log.c:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-linux-ps3_dump.c:linux-uaccess.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_debug.c:ps3_htp_def.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_debug.c:ps3_instance_manager.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_manager.c:scsi-scsi_tcq.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_manager.h:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_manager_sas.h:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_update.c:linux-mutex.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_update.c:ps3_device_update.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_instance_manager.h:ps3_cmd_channel.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_instance_manager.h:ps3_inner_data.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_instance_manager.h:ps3_irq.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioc_adp.c:ps3_scsih.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioctl.c:linux-mutex.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_irq.c:linux-kernel.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_mgr_channel.c:ps3_cmd_complete.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_mgr_cmd.c:linux-mutex.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:ps3_driver_log.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_rb_tree.h:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:ps3_ioc_state.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:ps3_recovery.h-is-included-more-than-once.
| |-- drivers-scsi-linkdata-ps3stor-ps3_sas_transport.h:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-ps3_scsi_cmd_err.c:linux-version.h-not-needed.
| |-- drivers-scsi-linkdata-ps3stor-ps3_scsih.c:ps3_module_para.h-is-included-more-than-once.
| |-- mm-page_alloc.c:linux-vmalloc.h-is-included-more-than-once.
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
|-- x86_64-allyesconfig
| |-- arch-x86-kernel-cpu-resctrl-rdtgroup.c:warning:variable-h-set-but-not-used
| |-- arch-x86-kernel-fpu-core.c:warning:no-previous-prototype-for-function-get_fpu_registers_pos
| |-- arch-x86-kernel-fpu-core.c:warning:no-previous-prototype-for-function-save_fpregs_to_fpkernelstate
| |-- block-bio.c:warning:Excess-function-parameter-nr_iovecs-description-in-bio_alloc_bioset
| |-- block-bio.c:warning:Function-parameter-or-member-nr_iovecs_int-not-described-in-bio_alloc_bioset
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_base.c:error:no-previous-prototype-for-function-ps3_pci_init-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_base.c:error:no-previous-prototype-for-function-ps3_pci_init_complete-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_base.c:error:no-previous-prototype-for-function-ps3_pci_init_complete_exit-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_cli_debug.c:error:no-previous-prototype-for-function-ps3_dump_context_show-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_dump.c:error:no-previous-prototype-for-function-ps3_dump_file_close-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_dump.c:error:no-previous-prototype-for-function-ps3_dump_file_open-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_dump.c:error:no-previous-prototype-for-function-ps3_dump_file_write-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_dump.c:error:no-previous-prototype-for-function-ps3_dump_filename_build-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-.-linux-ps3_dump.c:error:no-previous-prototype-for-function-ps3_dump_local_time-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_cmd_complete.c:error:no-previous-prototype-for-function-ps3_resp_status_convert-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_cmd_complete.c:error:no-previous-prototype-for-function-ps3_trigger_irq_poll-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_cmd_statistics.c:error:no-previous-prototype-for-function-ps3_cmd_stat_content_clear-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_cmd_statistics.c:error:no-previous-prototype-for-function-ps3_io_recv_ok_stat_inc-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_debug.c:error:no-previous-prototype-for-function-ps3_dump_dir_length-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_manager.c:error:no-previous-prototype-for-function-ps3_scsi_private_init_pd-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_manager.c:error:no-previous-prototype-for-function-ps3_scsi_private_init_vd-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_device_manager_sas.c:error:no-previous-prototype-for-function-ps3_sas_expander_phys_refresh-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioc_adp.c:error:no-previous-prototype-for-function-ps3_ioc_resource_prepare_hba-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioc_adp.c:error:no-previous-prototype-for-function-ps3_ioc_resource_prepare_raid-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioc_adp.c:error:no-previous-prototype-for-function-ps3_ioc_resource_prepare_switch-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioc_manager.c:error:no-previous-prototype-for-function-ps3_hard_reset_to_ready-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_ioctl.c:error:no-previous-prototype-for-function-ps3_clean_mgr_cmd-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_module_para.c:error:no-previous-prototype-for-function-ps3_cli_ver_query-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_cmd_waitq_abort-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_hba_qos_decision-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_hba_qos_vd_init-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_hba_qos_vd_reset-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_hba_qos_waitq_clear_all-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_hba_qos_waitq_notify-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_pd_quota_waitq_clean-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_pd_quota_waitq_clear_all-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_qos_all_pd_rc_get-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_qos_cmd_waitq_get-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_qos_exclusive_cmdword_get-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_qos_pd_waitq_ratio_update-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_qos_tg_decision-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_qos.c:error:no-previous-prototype-for-function-ps3_qos_vd_cmdword_get-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_r1x_conflict_queue_hash_bit_lock-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_r1x_hash_bit_check-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_r1x_hash_bit_lock-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_r1x_hash_bit_unlock-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_r1x_hash_range_lock-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_r1x_hash_range_unlock-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_r1x_write_lock.c:error:no-previous-prototype-for-function-ps3_range_check_and_insert-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_rb_tree.c:error:no-previous-prototype-for-function-rbtDelNodeDo-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:error:no-previous-prototype-for-function-ps3_hard_recovery_state_finish-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:error:no-previous-prototype-for-function-ps3_recovery_context_alloc-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:error:no-previous-prototype-for-function-ps3_recovery_context_delete-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:error:no-previous-prototype-for-function-ps3_recovery_context_free-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:error:no-previous-prototype-for-function-ps3_recovery_irq_queue_destroy-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_recovery.c:error:no-previous-prototype-for-function-ps3_recovery_state_transfer-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_sas_transport.c:error:no-previous-prototype-for-function-ps3_sas_update_phy_info-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_scsi_cmd_err.c:error:no-previous-prototype-for-function-ps3_set_task_manager_busy-Werror-Wmissing-prototypes
| |-- drivers-scsi-linkdata-ps3stor-ps3_scsi_cmd_err.c:error:no-previous-prototype-for-function-ps3_wait_for_outstanding_complete-Werror-Wmissing-prototypes
| |-- mm-hugetlb.c:warning:variable-gfp-set-but-not-used
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
|-- x86_64-buildonly-randconfig-001-20250310
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-__zone_set_pageset_high_and_batch
|-- x86_64-buildonly-randconfig-002-20250310
| |-- block-bio.c:warning:Excess-function-parameter-nr_iovecs-description-in-bio_alloc_bioset
| |-- block-bio.c:warning:Function-parameter-or-member-nr_iovecs_int-not-described-in-bio_alloc_bioset
| |-- mm-hugetlb.c:warning:variable-gfp-set-but-not-used
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
|-- x86_64-buildonly-randconfig-003-20250310
| |-- block-bio.c:warning:Excess-function-parameter-nr_iovecs-description-in-bio_alloc_bioset
| |-- block-bio.c:warning:Function-parameter-or-member-nr_iovecs_int-not-described-in-bio_alloc_bioset
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
|-- x86_64-buildonly-randconfig-004-20250310
| |-- mm-hugetlb.c:warning:variable-gfp-set-but-not-used
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
|-- x86_64-buildonly-randconfig-005-20250310
| |-- block-bio.c:warning:Excess-function-parameter-nr_iovecs-description-in-bio_alloc_bioset
| |-- block-bio.c:warning:Function-parameter-or-member-nr_iovecs_int-not-described-in-bio_alloc_bioset
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
|-- x86_64-buildonly-randconfig-006-20250310
| |-- block-bio.c:warning:Excess-function-parameter-nr_iovecs-description-in-bio_alloc_bioset
| |-- block-bio.c:warning:Function-parameter-or-member-nr_iovecs_int-not-described-in-bio_alloc_bioset
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-__zone_set_pageset_high_and_batch
|-- x86_64-defconfig
| |-- block-bio.c:warning:Excess-function-parameter-nr_iovecs-description-in-bio_alloc_bioset
| |-- block-bio.c:warning:Function-parameter-or-member-nr_iovecs_int-not-described-in-bio_alloc_bioset
| |-- mm-page_alloc.c:warning:no-previous-prototype-for-__drain_all_pages
| `-- mm-page_alloc.c:warning:no-previous-prototype-for-__zone_set_pageset_high_and_batch
`-- x86_64-randconfig-161-20250311
|-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__drain_all_pages
`-- mm-page_alloc.c:warning:no-previous-prototype-for-function-__zone_set_pageset_high_and_batch
elapsed time: 728m
configs tested: 15
configs skipped: 110
tested configs:
arm64 allmodconfig clang-18
arm64 allnoconfig gcc-14.2.0
arm64 randconfig-001-20250310 clang-19
arm64 randconfig-002-20250310 clang-17
arm64 randconfig-003-20250310 clang-15
arm64 randconfig-004-20250310 clang-17
x86_64 allnoconfig clang-19
x86_64 allyesconfig clang-19
x86_64 buildonly-randconfig-001-20250310 gcc-12
x86_64 buildonly-randconfig-002-20250310 clang-19
x86_64 buildonly-randconfig-003-20250310 clang-19
x86_64 buildonly-randconfig-004-20250310 clang-19
x86_64 buildonly-randconfig-005-20250310 clang-19
x86_64 buildonly-randconfig-006-20250310 gcc-12
x86_64 defconfig gcc-11
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:OLK-6.6] BUILD REGRESSION 5dc4d5d2c6e574ad35fa81c3b1768238a0b9b3eb
by kernel test robot 11 Mar '25
by kernel test robot 11 Mar '25
11 Mar '25
tree/branch: https://gitee.com/openeuler/kernel.git OLK-6.6
branch HEAD: 5dc4d5d2c6e574ad35fa81c3b1768238a0b9b3eb !15299 ptp: Ensure info->enable callback is always set
Error/Warning ids grouped by kconfigs:
recent_errors
|-- arm64-allmodconfig
| |-- include-linux-fortify-string.h:warning:call-to-__write_overflow_field-declared-with-warning-attribute:detected-write-beyond-size-of-field-(1st-parameter)-maybe-use-struct_group()
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memcontrol.c:warning:no-previous-prototype-for-function-hisi_oom_recover
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-function-cache_limit_mbytes_sysctl_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-function-cache_reclaim_enable_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-function-cache_reclaim_sysctl_handler
| |-- mm-share_pool.c:warning:Function-parameter-or-member-node_id-not-described-in-sp_area_alloc
| |-- mm-share_pool.c:warning:Function-parameter-or-member-spg_id-not-described-in-mg_sp_unshare
| |-- mm-share_pool.c:warning:duplicate-section-name-Return
| |-- mm-share_pool.c:warning:expecting-prototype-for-mp_sp_group_id_by_pid().-Prototype-was-for-mg_sp_group_id_by_pid()-instead
| |-- mm-share_pool.c:warning:variable-is_hugepage-set-but-not-used
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- arm64-allnoconfig
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- arm64-randconfig-001-20250310
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- arm64-randconfig-002-20250310
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- arm64-randconfig-003-20250310
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- arm64-randconfig-004-20250310
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- arm64-randconfig-051-20250311
| |-- Documentation-devicetree-bindings-dma-snps-dw-axi-dmac.yaml:snps-priority:multiple-incompatible-types:uint32-array
| `-- Documentation-devicetree-bindings-net-snps-dwmac.yaml:snps-priority:multiple-incompatible-types:uint32
|-- arm64-randconfig-052-20250311
| |-- Documentation-devicetree-bindings-dma-snps-dw-axi-dmac.yaml:snps-priority:multiple-incompatible-types:uint32-array
| `-- Documentation-devicetree-bindings-net-snps-dwmac.yaml:snps-priority:multiple-incompatible-types:uint32
|-- arm64-randconfig-053-20250311
| |-- Documentation-devicetree-bindings-dma-snps-dw-axi-dmac.yaml:snps-priority:multiple-incompatible-types:uint32-array
| `-- Documentation-devicetree-bindings-net-snps-dwmac.yaml:snps-priority:multiple-incompatible-types:uint32
|-- arm64-randconfig-054-20250311
| |-- Documentation-devicetree-bindings-dma-snps-dw-axi-dmac.yaml:snps-priority:multiple-incompatible-types:uint32-array
| `-- Documentation-devicetree-bindings-net-snps-dwmac.yaml:snps-priority:multiple-incompatible-types:uint32
|-- arm64-randconfig-055-20250311
| |-- Documentation-devicetree-bindings-dma-snps-dw-axi-dmac.yaml:snps-priority:multiple-incompatible-types:uint32-array
| `-- Documentation-devicetree-bindings-net-snps-dwmac.yaml:snps-priority:multiple-incompatible-types:uint32
|-- loongarch-allmodconfig
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-cache_limit_mbytes_sysctl_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-cache_reclaim_enable_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-cache_reclaim_sysctl_handler
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- loongarch-allnoconfig
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- loongarch-allyesconfig
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-cache_limit_mbytes_sysctl_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-cache_reclaim_enable_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-cache_reclaim_sysctl_handler
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- loongarch-randconfig-001-20250310
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- loongarch-randconfig-002-20250310
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- loongarch-randconfig-r121-20250311
| `-- include-linux-mmzone.h:error:error-Allocator-MAX_ORDER-exceeds-SECTION_SIZE
|-- loongarch-randconfig-r122-20250311
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-allnoconfig
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-allyesconfig
| |-- include-linux-fortify-string.h:warning:call-to-__write_overflow_field-declared-with-warning-attribute:detected-write-beyond-size-of-field-(1st-parameter)-maybe-use-struct_group()
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-function-cache_limit_mbytes_sysctl_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-function-cache_reclaim_enable_handler
| |-- mm-page_cache_limit.c:warning:no-previous-prototype-for-function-cache_reclaim_sysctl_handler
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-buildonly-randconfig-001-20250310
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-buildonly-randconfig-002-20250310
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-buildonly-randconfig-003-20250310
| |-- include-linux-psp-hygon.h:warning:no-previous-prototype-for-function-psp_register_cmd_notifier
| |-- include-linux-psp-hygon.h:warning:no-previous-prototype-for-function-psp_unregister_cmd_notifier
| |-- mm-madvise.c:warning:no-previous-prototype-for-function-force_swapin_vma
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-buildonly-randconfig-004-20250310
| |-- ld.lld:error:undefined-symbol:arch_kexec_protect_crashkres
| |-- ld.lld:error:undefined-symbol:machine_crash_shutdown
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-buildonly-randconfig-005-20250310
| |-- mm-memblock.c:warning:no-previous-prototype-for-function-memblock_alloc_range_nid_flags
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-buildonly-randconfig-006-20250310
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-defconfig
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
|-- x86_64-randconfig-161-20250311
| |-- include-linux-fortify-string.h:warning:call-to-__write_overflow_field-declared-with-warning-attribute:detected-write-beyond-size-of-field-(1st-parameter)-maybe-use-struct_group()
| |-- mm-compaction.c-(null)()-warn:(struct-ctl_table)-proc_handler-cannot-be-NULL.-Expression:vm_compaction-proc_handler
| |-- mm-compaction.c-(null)()-warn:(struct-ctl_table)-procname-cannot-be-NULL.-Expression:vm_compaction-procname
| |-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
| |-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
| `-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
`-- x86_64-randconfig-r112-20250311
|-- mm-memory.c:warning:variable-nr_pages-set-but-not-used
|-- mm-oom_kill.c:warning:Function-parameter-or-member-oc-not-described-in-oom_next_task
|-- mm-oom_kill.c:warning:Function-parameter-or-member-points-not-described-in-oom_next_task
|-- mm-oom_kill.c:warning:Function-parameter-or-member-task-not-described-in-oom_next_task
|-- mm-oom_kill.c:warning:expecting-prototype-for-We-choose-the-task-in-low().-Prototype-was-for-oom_next_task()-instead
`-- mm-vmalloc.c:warning:Function-parameter-or-member-pgoff-not-described-in-remap_vmalloc_hugepage_range_partial
elapsed time: 723m
configs tested: 19
configs skipped: 113
tested configs:
arm64 allmodconfig clang-18
arm64 allnoconfig gcc-14.2.0
arm64 randconfig-001-20250310 clang-19
arm64 randconfig-002-20250310 clang-17
arm64 randconfig-003-20250310 clang-15
arm64 randconfig-004-20250310 clang-17
loongarch allmodconfig gcc-14.2.0
loongarch allnoconfig gcc-14.2.0
loongarch randconfig-001-20250310 gcc-14.2.0
loongarch randconfig-002-20250310 gcc-14.2.0
x86_64 allnoconfig clang-19
x86_64 allyesconfig clang-19
x86_64 buildonly-randconfig-001-20250310 gcc-12
x86_64 buildonly-randconfig-002-20250310 clang-19
x86_64 buildonly-randconfig-003-20250310 clang-19
x86_64 buildonly-randconfig-004-20250310 clang-19
x86_64 buildonly-randconfig-005-20250310 clang-19
x86_64 buildonly-randconfig-006-20250310 gcc-12
x86_64 defconfig gcc-11
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1480/1480] mm/debug.c:174:3: warning: format specifies type 'void *' but the argument has type 'int'
by kernel test robot 11 Mar '25
by kernel test robot 11 Mar '25
11 Mar '25
Hi Ding,
FYI, the error/warning still remains.
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 09e192513a17ce8324302ae595ebf001e08e13b0
commit: 2d2fe6b40444bd8f84f674930ac5f98a6314702e [1480/1480] ascend: mm: add an owner for mm_struct
config: x86_64-randconfig-r112-20250311 (https://download.01.org/0day-ci/archive/20250311/202503110222.0FkInwB9-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/20250311/202503110222.0FkInwB9-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/202503110222.0FkInwB9-lkp@intel.com/
All warnings (new ones prefixed by >>):
mm/debug.c: note: in included file (through include/linux/kernel.h):
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:44: sparse: sparse: Expected ) in function call
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:44: sparse: sparse: got <
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:43: sparse: sparse: not a function <noident>
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:22: sparse: sparse: bad constant expression type
mm/debug.c: note: in included file (through include/linux/printk.h, include/linux/kernel.h):
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:44: sparse: sparse: Expected ) in function call
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:44: sparse: sparse: got <
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:43: sparse: sparse: not a function <noident>
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:22: sparse: sparse: bad constant expression type
mm/debug.c: note: in included file (through include/linux/string.h, include/linux/bitmap.h, include/linux/cpumask.h, ...):
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:44: sparse: sparse: Expected ) in function call
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:44: sparse: sparse: got <
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:43: sparse: sparse: not a function <noident>
/opt/cross/clang-cd708029e0/lib/clang/19/include/stdarg.h:22:22: sparse: sparse: bad constant expression type
In file included from mm/debug.c:14:
In file included from include/linux/migrate.h:6:
In file included from include/linux/mempolicy.h:16:
include/linux/pagemap.h:425:21: warning: cast from 'int (*)(struct file *, struct page *)' to 'filler_t *' (aka 'int (*)(void *, struct page *)') converts to incompatible function type [-Wcast-function-type-strict]
425 | filler_t *filler = (filler_t *)mapping->a_ops->readpage;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> mm/debug.c:174:3: warning: format specifies type 'void *' but the argument has type 'int' [-Wformat]
135 | atomic_read(&mm->tlb_flush_pending),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/printk.h:342:35: note: expanded from macro 'pr_emerg'
342 | printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__)
| ~~~ ^~~~~~~~~~~
>> mm/debug.c:175:3: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
142 | mm->def_flags, &mm->def_flags
| ^~~~~~~~~~~~~
include/linux/printk.h:342:35: note: expanded from macro 'pr_emerg'
342 | printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__)
| ~~~ ^~~~~~~~~~~
>> mm/debug.c:175:18: warning: format specifies type 'unsigned long' but the argument has type 'const unsigned long *' [-Wformat]
143 | mm->def_flags, &mm->def_flags
| ^~~~~~~~~~~~~~
include/linux/printk.h:342:35: note: expanded from macro 'pr_emerg'
342 | printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__)
| ~~~ ^~~~~~~~~~~
>> mm/debug.c:143:21: warning: more '%' conversions than data arguments [-Wformat-insufficient-args]
143 | "def_flags: %#lx(%pGv)\n",
| ~^
include/linux/printk.h:342:27: note: expanded from macro 'pr_emerg'
342 | printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__)
| ^~~
include/linux/printk.h:332:21: note: expanded from macro 'pr_fmt'
332 | #define pr_fmt(fmt) fmt
| ^~~
5 warnings generated.
vim +174 mm/debug.c
82742a3a5152195 Sasha Levin 2014-10-09 114
31c9afa6db122a5 Sasha Levin 2014-10-09 115 void dump_mm(const struct mm_struct *mm)
31c9afa6db122a5 Sasha Levin 2014-10-09 116 {
7a9cdebdcc17e42 Linus Torvalds 2018-09-12 117 pr_emerg("mm %px mmap %px seqnum %llu task_size %lu\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 118 #ifdef CONFIG_MMU
152a2d199e1385c Matthew Wilcox 2018-01-04 119 "get_unmapped_area %px\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 120 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 121 "mmap_base %lu mmap_legacy_base %lu highest_vm_end %lu\n"
152a2d199e1385c Matthew Wilcox 2018-01-04 122 "pgd %px mm_users %d mm_count %d pgtables_bytes %lu map_count %d\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 123 "hiwater_rss %lx hiwater_vm %lx total_vm %lx locked_vm %lx\n"
84638335900f199 Konstantin Khlebnikov 2016-01-14 124 "pinned_vm %lx data_vm %lx exec_vm %lx stack_vm %lx\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 125 "start_code %lx end_code %lx start_data %lx end_data %lx\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 126 "start_brk %lx brk %lx start_stack %lx\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 127 "arg_start %lx arg_end %lx env_start %lx env_end %lx\n"
152a2d199e1385c Matthew Wilcox 2018-01-04 128 "binfmt %px flags %lx core_state %px\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 129 #ifdef CONFIG_AIO
152a2d199e1385c Matthew Wilcox 2018-01-04 130 "ioctx_table %px\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 131 #endif
2d2fe6b40444bd8 Ding Tianhong 2021-10-30 132 #ifdef CONFIG_MM_OWNER
152a2d199e1385c Matthew Wilcox 2018-01-04 133 "owner %px "
31c9afa6db122a5 Sasha Levin 2014-10-09 134 #endif
152a2d199e1385c Matthew Wilcox 2018-01-04 135 "exe_file %px\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 136 #ifdef CONFIG_MMU_NOTIFIER
152a2d199e1385c Matthew Wilcox 2018-01-04 137 "mmu_notifier_mm %px\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 138 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 139 #ifdef CONFIG_NUMA_BALANCING
31c9afa6db122a5 Sasha Levin 2014-10-09 140 "numa_next_scan %lu numa_scan_offset %lu numa_scan_seq %d\n"
31c9afa6db122a5 Sasha Levin 2014-10-09 141 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 142 "tlb_flush_pending %d\n"
b8eceeb99014cf5 Vlastimil Babka 2016-03-15 @143 "def_flags: %#lx(%pGv)\n",
31c9afa6db122a5 Sasha Levin 2014-10-09 144
7a9cdebdcc17e42 Linus Torvalds 2018-09-12 145 mm, mm->mmap, (long long) mm->vmacache_seqnum, mm->task_size,
31c9afa6db122a5 Sasha Levin 2014-10-09 146 #ifdef CONFIG_MMU
31c9afa6db122a5 Sasha Levin 2014-10-09 147 mm->get_unmapped_area,
31c9afa6db122a5 Sasha Levin 2014-10-09 148 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 149 mm->mmap_base, mm->mmap_legacy_base, mm->highest_vm_end,
31c9afa6db122a5 Sasha Levin 2014-10-09 150 mm->pgd, atomic_read(&mm->mm_users),
31c9afa6db122a5 Sasha Levin 2014-10-09 151 atomic_read(&mm->mm_count),
af5b0f6a09e42c9 Kirill A. Shutemov 2017-11-15 152 mm_pgtables_bytes(mm),
31c9afa6db122a5 Sasha Levin 2014-10-09 153 mm->map_count,
53f4e528406789b Daniel Jordan 2019-08-14 154 mm->hiwater_rss, mm->hiwater_vm, mm->total_vm,
53f4e528406789b Daniel Jordan 2019-08-14 155 atomic_long_read(&mm->locked_vm),
84638335900f199 Konstantin Khlebnikov 2016-01-14 156 mm->pinned_vm, mm->data_vm, mm->exec_vm, mm->stack_vm,
31c9afa6db122a5 Sasha Levin 2014-10-09 157 mm->start_code, mm->end_code, mm->start_data, mm->end_data,
31c9afa6db122a5 Sasha Levin 2014-10-09 158 mm->start_brk, mm->brk, mm->start_stack,
31c9afa6db122a5 Sasha Levin 2014-10-09 159 mm->arg_start, mm->arg_end, mm->env_start, mm->env_end,
31c9afa6db122a5 Sasha Levin 2014-10-09 160 mm->binfmt, mm->flags, mm->core_state,
31c9afa6db122a5 Sasha Levin 2014-10-09 161 #ifdef CONFIG_AIO
31c9afa6db122a5 Sasha Levin 2014-10-09 162 mm->ioctx_table,
31c9afa6db122a5 Sasha Levin 2014-10-09 163 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 164 #ifdef CONFIG_MEMCG
31c9afa6db122a5 Sasha Levin 2014-10-09 165 mm->owner,
31c9afa6db122a5 Sasha Levin 2014-10-09 166 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 167 mm->exe_file,
31c9afa6db122a5 Sasha Levin 2014-10-09 168 #ifdef CONFIG_MMU_NOTIFIER
31c9afa6db122a5 Sasha Levin 2014-10-09 169 mm->mmu_notifier_mm,
31c9afa6db122a5 Sasha Levin 2014-10-09 170 #endif
31c9afa6db122a5 Sasha Levin 2014-10-09 171 #ifdef CONFIG_NUMA_BALANCING
31c9afa6db122a5 Sasha Levin 2014-10-09 172 mm->numa_next_scan, mm->numa_scan_offset, mm->numa_scan_seq,
31c9afa6db122a5 Sasha Levin 2014-10-09 173 #endif
16af97dc5a89753 Nadav Amit 2017-08-10 @174 atomic_read(&mm->tlb_flush_pending),
b8eceeb99014cf5 Vlastimil Babka 2016-03-15 @175 mm->def_flags, &mm->def_flags
31c9afa6db122a5 Sasha Levin 2014-10-09 176 );
31c9afa6db122a5 Sasha Levin 2014-10-09 177 }
31c9afa6db122a5 Sasha Levin 2014-10-09 178
:::::: The code at line 174 was first introduced by commit
:::::: 16af97dc5a8975371a83d9e30a64038b48f40a2d mm: migrate: prevent racy access to tlb_flush_pending
:::::: TO: Nadav Amit <nadav.amit(a)gmail.com>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS] BUILD REGRESSION 09e192513a17ce8324302ae595ebf001e08e13b0
by kernel test robot 11 Mar '25
by kernel test robot 11 Mar '25
11 Mar '25
tree/branch: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
branch HEAD: 09e192513a17ce8324302ae595ebf001e08e13b0 !15415 tracing/histograms: Fix memory leak problem
Error/Warning (recently discovered and may have been fixed):
drivers/block/zram/.tmp_zcomp.o: warning: objtool: missing symbol for section .text
Error/Warning ids grouped by kconfigs:
recent_errors
|-- arm64-allmodconfig
| |-- mm-kasan-kasan_init.c:warning:variable-p4d-set-but-not-used
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- mm-memcontrol.c:warning:array-subscript-nid-is-outside-array-bounds-of-struct-mem_cgroup_per_node
| |-- mm-memcontrol.c:warning:bad-line:otherwise.
| |-- 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-vmalloc.c:warning:variable-start-set-but-not-used
|-- arm64-allnoconfig
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- 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
|-- arm64-randconfig-001-20250310
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- mm-memcontrol.c:warning:array-subscript-nid-is-outside-array-bounds-of-struct-mem_cgroup_per_node
| |-- mm-memcontrol.c:warning:bad-line:otherwise.
| |-- mm-memcontrol.c:warning:no-previous-prototype-for-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
|-- arm64-randconfig-002-20250310
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- 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
|-- arm64-randconfig-003-20250310
| |-- drivers-rtc-rtc-ds1685.c:error:Cannot-parse-struct-or-union
| |-- mm-hugetlb.c:warning:no-previous-prototype-for-free_huge_page_to_dhugetlb_pool
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- 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-vmalloc.c:warning:variable-start-set-but-not-used
|-- arm64-randconfig-004-20250310
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- 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-allnoconfig
| |-- mm-hugetlb.c:linux-share_pool.h-is-included-more-than-once.
| |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page
| |-- mm-shmem.c:linux-share_pool.h-is-included-more-than-once.
| |-- mm-swap.c:linux-memremap.h-is-included-more-than-once.
| |-- 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
| |-- drivers-rtc-rtc-ds1685.c:error:Cannot-parse-struct-or-union
| |-- mm-.tmp_ioremap.o:warning:objtool:missing-symbol-for-section-.text
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-memcontrol.c:warning:bad-line:otherwise.
| |-- 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-page_alloc.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-deferred_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type
| `-- mm-vmalloc.c:warning:variable-start-set-but-not-used
|-- x86_64-buildonly-randconfig-001-20250310
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- mm-memcontrol.c:warning:bad-line:otherwise.
| |-- mm-memcontrol.c:warning:no-previous-prototype-for-dhugetlb_pool_is_free
| |-- 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-vmalloc.c:warning:variable-start-set-but-not-used
|-- x86_64-buildonly-randconfig-002-20250310
| |-- mm-.tmp_ioremap.o:warning:objtool:missing-symbol-for-section-.text
| |-- mm-.tmp_vmacache.o:warning:objtool:missing-symbol-for-section-.text
| |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- 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-003-20250310
| |-- drivers-rtc-rtc-ds1685.c:error:Cannot-parse-struct-or-union
| |-- kernel-hung_task.c:error:use-of-undeclared-identifier-sysctl_hung_task_all_cpu_backtrace
| |-- mm-memcontrol.c:warning:bad-line:otherwise.
| |-- 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-004-20250310
| |-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool
| |-- mm-page_alloc.c:warning:Function-parameter-or-member-mt-not-described-in-__putback_isolated_page
| |-- mm-page_alloc.c:warning:cast-from-int-(-)(unsigned-long-unsigned-long-struct-deferred_args-)-to-ktask_thread_func-(aka-int-(-)(void-void-void-)-)-converts-to-incompatible-function-type
| |-- 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-20250310
| |-- crypto-.tmp_sm4_generic.o:warning:objtool:missing-symbol-for-section-.text
| |-- drivers-block-zram-.tmp_zcomp.o:warning:objtool:missing-symbol-for-section-.text
| |-- drivers-gpu-drm-nouveau-.tmp_nouveau_abi16.o:warning:objtool:missing-symbol-for-section-.text
| |-- drivers-rtc-rtc-ds1685.c:error:Cannot-parse-struct-or-union
| |-- fs-crypto-.tmp_hooks.o:warning:objtool:missing-symbol-for-section-.text
| |-- mm-.tmp_ioremap.o:warning:objtool:missing-symbol-for-section-.text
| |-- mm-.tmp_vmacache.o:warning:objtool:missing-symbol-for-section-.text
| |-- mm-memcontrol.c:warning:bad-line:otherwise.
| |-- 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
| `-- net-can-j1939-.tmp_address-claim.o:warning:objtool:missing-symbol-for-section-.text
|-- x86_64-buildonly-randconfig-006-20250310
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- 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-defconfig
| |-- mm-hugetlb.c:warning:no-previous-prototype-for-free_huge_page_to_dhugetlb_pool
| |-- mm-maccess.c:warning:no-previous-prototype-for-__probe_user_read
| |-- 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-102-20250310
| |-- mm-hugetlb.c:warning:no-previous-prototype-for-free_huge_page_to_dhugetlb_pool
| |-- mm-khugepaged.c:warning:Function-parameter-or-member-reliable-not-described-in-collapse_shmem
| |-- mm-memcontrol.c:warning:no-previous-prototype-for-dhugetlb_pool_is_free
| |-- 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-vmalloc.c:warning:variable-start-set-but-not-used
`-- x86_64-randconfig-161-20250310
|-- drivers-rtc-rtc-ds1685.c:error:Cannot-parse-struct-or-union
|-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool
|-- 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
`-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled-Werror-Wimplicit-function-declaration
elapsed time: 729m
configs tested: 15
configs skipped: 129
tested configs:
arm64 allmodconfig gcc-14.2.0
arm64 allnoconfig gcc-14.2.0
arm64 randconfig-001-20250310 gcc-14.2.0
arm64 randconfig-002-20250310 gcc-14.2.0
arm64 randconfig-003-20250310 gcc-14.2.0
arm64 randconfig-004-20250310 gcc-14.2.0
x86_64 allnoconfig clang-19
x86_64 allyesconfig clang-19
x86_64 buildonly-randconfig-001-20250310 gcc-12
x86_64 buildonly-randconfig-002-20250310 clang-19
x86_64 buildonly-randconfig-003-20250310 clang-19
x86_64 buildonly-randconfig-004-20250310 clang-19
x86_64 buildonly-randconfig-005-20250310 clang-19
x86_64 buildonly-randconfig-006-20250310 gcc-12
x86_64 defconfig gcc-11
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[PATCH OLK-5.10] ubi: fastmap: wl: Schedule fm_work if wear-leveling pool is empty
by Wang Zhaolong 10 Mar '25
by Wang Zhaolong 10 Mar '25
10 Mar '25
From: Zhihao Cheng <chengzhihao1(a)huawei.com>
mainline inclusion
from mainline-v6.13-rc1
commit c4595fe394a289927077e3da561db27811919ee0
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IBS8G5
CVE: NA
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
Since commit 14072ee33d5a ("ubi: fastmap: Check wl_pool for free peb
before wear leveling"), wear_leveling_worker() won't schedule fm_work
if wear-leveling pool is empty, which could temporarily disable the
wear-leveling until the fastmap is updated(eg. pool becomes empty).
Fix it by scheduling fm_work if wl_pool is empty during wear-leveing.
Fixes: 14072ee33d5a ("ubi: fastmap: Check wl_pool for free peb before wear leveling")
Signed-off-by: Zhihao Cheng <chengzhihao1(a)huawei.com>
Signed-off-by: Richard Weinberger <richard(a)nod.at>
Signed-off-by: Wang Zhaolong <wangzhaolong1(a)huawei.com>
---
drivers/mtd/ubi/fastmap-wl.c | 19 ++++++++++++++++---
drivers/mtd/ubi/wl.c | 2 +-
drivers/mtd/ubi/wl.h | 3 ++-
3 files changed, 19 insertions(+), 5 deletions(-)
diff --git a/drivers/mtd/ubi/fastmap-wl.c b/drivers/mtd/ubi/fastmap-wl.c
index 2a9cc9413c42..9bdb6525f128 100644
--- a/drivers/mtd/ubi/fastmap-wl.c
+++ b/drivers/mtd/ubi/fastmap-wl.c
@@ -344,18 +344,31 @@ int ubi_wl_get_peb(struct ubi_device *ubi)
/**
* next_peb_for_wl - returns next PEB to be used internally by the
* WL sub-system.
*
* @ubi: UBI device description object
+ * @need_fill: whether to fill wear-leveling pool when no PEBs are found
*/
-static struct ubi_wl_entry *next_peb_for_wl(struct ubi_device *ubi)
+static struct ubi_wl_entry *next_peb_for_wl(struct ubi_device *ubi,
+ bool need_fill)
{
struct ubi_fm_pool *pool = &ubi->fm_wl_pool;
int pnum;
- if (pool->used == pool->size)
+ if (pool->used == pool->size) {
+ if (need_fill && !ubi->fm_work_scheduled) {
+ /*
+ * We cannot update the fastmap here because this
+ * function is called in atomic context.
+ * Let's fail here and refill/update it as soon as
+ * possible.
+ */
+ ubi->fm_work_scheduled = 1;
+ schedule_work(&ubi->fm_work);
+ }
return NULL;
+ }
pnum = pool->pebs[pool->used];
return ubi->lookuptbl[pnum];
}
@@ -373,11 +386,11 @@ static bool need_wear_leveling(struct ubi_device *ubi)
struct ubi_wl_entry *e;
if (!ubi->used.rb_node)
return false;
- e = next_peb_for_wl(ubi);
+ e = next_peb_for_wl(ubi, false);
if (!e) {
if (!ubi->free.rb_node)
return false;
e = find_wl_entry(ubi, &ubi->free, WL_FREE_MAX_DIFF, 0);
ec = e->ec;
diff --git a/drivers/mtd/ubi/wl.c b/drivers/mtd/ubi/wl.c
index b60eea10f68f..97b86fab1466 100644
--- a/drivers/mtd/ubi/wl.c
+++ b/drivers/mtd/ubi/wl.c
@@ -681,11 +681,11 @@ static int wear_leveling_worker(struct ubi_device *ubi, struct ubi_work *wrk,
spin_lock(&ubi->wl_lock);
ubi_assert(!ubi->move_from && !ubi->move_to);
ubi_assert(!ubi->move_to_put);
#ifdef CONFIG_MTD_UBI_FASTMAP
- if (!next_peb_for_wl(ubi) ||
+ if (!next_peb_for_wl(ubi, true) ||
#else
if (!ubi->free.rb_node ||
#endif
(!ubi->used.rb_node && !ubi->scrub.rb_node)) {
/*
diff --git a/drivers/mtd/ubi/wl.h b/drivers/mtd/ubi/wl.h
index 7b6715ef6d4a..a69169c35e31 100644
--- a/drivers/mtd/ubi/wl.h
+++ b/drivers/mtd/ubi/wl.h
@@ -3,11 +3,12 @@
#define UBI_WL_H
#ifdef CONFIG_MTD_UBI_FASTMAP
static void update_fastmap_work_fn(struct work_struct *wrk);
static struct ubi_wl_entry *find_anchor_wl_entry(struct rb_root *root);
static struct ubi_wl_entry *get_peb_for_wl(struct ubi_device *ubi);
-static struct ubi_wl_entry *next_peb_for_wl(struct ubi_device *ubi);
+static struct ubi_wl_entry *next_peb_for_wl(struct ubi_device *ubi,
+ bool need_fill);
static bool need_wear_leveling(struct ubi_device *ubi);
static void ubi_fastmap_close(struct ubi_device *ubi);
static inline void ubi_fastmap_init(struct ubi_device *ubi, int *count)
{
if (ubi->fm_disabled)
--
2.34.3
2
1
*** BLURB HERE ***
Kevin Hao (2):
cpufreq: Move to_gov_attr_set() to cpufreq.h
cpufreq: governor: Use kobject release() method to free dbs_data
drivers/cpufreq/cpufreq_governor.c | 20 +++++++++++++-------
drivers/cpufreq/cpufreq_governor.h | 1 +
drivers/cpufreq/cpufreq_governor_attr_set.c | 5 -----
include/linux/cpufreq.h | 5 +++++
4 files changed, 19 insertions(+), 12 deletions(-)
--
2.34.1
2
3
*** BLURB HERE ***
Kevin Hao (2):
cpufreq: Move to_gov_attr_set() to cpufreq.h
cpufreq: governor: Use kobject release() method to free dbs_data
drivers/cpufreq/cpufreq_governor.c | 20 +++++++++++++-------
drivers/cpufreq/cpufreq_governor.h | 1 +
drivers/cpufreq/cpufreq_governor_attr_set.c | 5 -----
include/linux/cpufreq.h | 5 +++++
4 files changed, 19 insertions(+), 12 deletions(-)
--
2.34.1
2
3

[PATCH OLK-6.6] bpf: bpf_local_storage: Always use bpf_mem_alloc in PREEMPT_RT
by Tengda Wu 10 Mar '25
by Tengda Wu 10 Mar '25
10 Mar '25
From: Martin KaFai Lau <martin.lau(a)kernel.org>
stable inclusion
from stable-v6.6.76
commit 3392fa605d7c5708c5fbe02e4fbdac547c3b7352
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/IBREBI
CVE: CVE-2024-58070
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id…
--------------------------------
[ Upstream commit 8eef6ac4d70eb1f0099fff93321d90ce8fa49ee1 ]
In PREEMPT_RT, kmalloc(GFP_ATOMIC) is still not safe in non preemptible
context. bpf_mem_alloc must be used in PREEMPT_RT. This patch is
to enforce bpf_mem_alloc in the bpf_local_storage when CONFIG_PREEMPT_RT
is enabled.
[ 35.118559] BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48
[ 35.118566] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1832, name: test_progs
[ 35.118569] preempt_count: 1, expected: 0
[ 35.118571] RCU nest depth: 1, expected: 1
[ 35.118577] INFO: lockdep is turned off.
...
[ 35.118647] __might_resched+0x433/0x5b0
[ 35.118677] rt_spin_lock+0xc3/0x290
[ 35.118700] ___slab_alloc+0x72/0xc40
[ 35.118723] __kmalloc_noprof+0x13f/0x4e0
[ 35.118732] bpf_map_kzalloc+0xe5/0x220
[ 35.118740] bpf_selem_alloc+0x1d2/0x7b0
[ 35.118755] bpf_local_storage_update+0x2fa/0x8b0
[ 35.118784] bpf_sk_storage_get_tracing+0x15a/0x1d0
[ 35.118791] bpf_prog_9a118d86fca78ebb_trace_inet_sock_set_state+0x44/0x66
[ 35.118795] bpf_trace_run3+0x222/0x400
[ 35.118820] __bpf_trace_inet_sock_set_state+0x11/0x20
[ 35.118824] trace_inet_sock_set_state+0x112/0x130
[ 35.118830] inet_sk_state_store+0x41/0x90
[ 35.118836] tcp_set_state+0x3b3/0x640
There is no need to adjust the gfp_flags passing to the
bpf_mem_cache_alloc_flags() which only honors the GFP_KERNEL.
The verifier has ensured GFP_KERNEL is passed only in sleepable context.
It has been an old issue since the first introduction of the
bpf_local_storage ~5 years ago, so this patch targets the bpf-next.
bpf_mem_alloc is needed to solve it, so the Fixes tag is set
to the commit when bpf_mem_alloc was first used in the bpf_local_storage.
Fixes: 08a7ce384e33 ("bpf: Use bpf_mem_cache_alloc/free in bpf_local_storage_elem")
Reported-by: Alexei Starovoitov <ast(a)kernel.org>
Signed-off-by: Martin KaFai Lau <martin.lau(a)kernel.org>
Link: https://lore.kernel.org/r/20241218193000.2084281-1-martin.lau@linux.dev
Signed-off-by: Alexei Starovoitov <ast(a)kernel.org>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
Signed-off-by: Tengda Wu <wutengda2(a)huawei.com>
---
kernel/bpf/bpf_local_storage.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/kernel/bpf/bpf_local_storage.c b/kernel/bpf/bpf_local_storage.c
index e8d02212da70..b4c6b9b3cb42 100644
--- a/kernel/bpf/bpf_local_storage.c
+++ b/kernel/bpf/bpf_local_storage.c
@@ -823,8 +823,12 @@ bpf_local_storage_map_alloc(union bpf_attr *attr,
smap->elem_size = offsetof(struct bpf_local_storage_elem,
sdata.data[attr->value_size]);
- smap->bpf_ma = bpf_ma;
- if (bpf_ma) {
+ /* In PREEMPT_RT, kmalloc(GFP_ATOMIC) is still not safe in non
+ * preemptible context. Thus, enforce all storages to use
+ * bpf_mem_alloc when CONFIG_PREEMPT_RT is enabled.
+ */
+ smap->bpf_ma = IS_ENABLED(CONFIG_PREEMPT_RT) ? true : bpf_ma;
+ if (smap->bpf_ma) {
err = bpf_mem_alloc_init(&smap->selem_ma, smap->elem_size, false);
if (err)
goto free_smap;
--
2.34.1
2
1

[openeuler:OLK-5.10 2799/2799] block/bio.c:412: warning: Function parameter or member 'nr_iovecs_int' not described in 'bio_alloc_bioset'
by kernel test robot 10 Mar '25
by kernel test robot 10 Mar '25
10 Mar '25
tree: https://gitee.com/openeuler/kernel.git OLK-5.10
head: 2c111a42444b16dfa7f0081facc22e382988eacc
commit: 6381672514c4d94637cd4db830b8644440abe99a [2799/2799] block: fix kabi broken
config: x86_64-defconfig (https://download.01.org/0day-ci/archive/20250310/202503101424.uyjkGNSl-lkp@…)
compiler: gcc-11 (Debian 11.3.0-12) 11.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250310/202503101424.uyjkGNSl-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/202503101424.uyjkGNSl-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> block/bio.c:412: warning: Function parameter or member 'nr_iovecs_int' not described in 'bio_alloc_bioset'
>> block/bio.c:412: warning: Excess function parameter 'nr_iovecs' description in 'bio_alloc_bioset'
vim +412 block/bio.c
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 374
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 375 /**
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 376 * bio_alloc_bioset - allocate a bio for I/O
519c8e9ffd86143 block/bio.c Randy Dunlap 2017-10-16 377 * @gfp_mask: the GFP_* mask given to the slab allocator
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 378 * @nr_iovecs: number of iovecs to pre-allocate
db18efac0bd644e fs/bio.c Jaak Ristioja 2010-01-15 379 * @bs: the bio_set to allocate from.
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 380 *
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 381 * Description:
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 382 * If @bs is NULL, uses kmalloc() to allocate the bio; else the allocation is
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 383 * backed by the @bs's mempool.
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 384 *
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 385 * When @bs is not NULL, if %__GFP_DIRECT_RECLAIM is set then bio_alloc will
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 386 * always be able to allocate a bio. This is due to the mempool guarantees.
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 387 * To make this work, callers must never allocate more than 1 bio at a time
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 388 * from this pool. Callers that need to allocate more than 1 bio must always
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 389 * submit the previously allocated bio for IO before attempting to allocate
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 390 * a new one. Failure to do so can cause deadlocks under memory pressure.
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 391 *
ed00aabd5eb9fb4 block/bio.c Christoph Hellwig 2020-07-01 392 * Note that when running under submit_bio_noacct() (i.e. any block
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 393 * driver), bios are not submitted until after you return - see the code in
ed00aabd5eb9fb4 block/bio.c Christoph Hellwig 2020-07-01 394 * submit_bio_noacct() that converts recursion into iteration, to prevent
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 395 * stack overflows.
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 396 *
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 397 * This would normally mean allocating multiple bios under
ed00aabd5eb9fb4 block/bio.c Christoph Hellwig 2020-07-01 398 * submit_bio_noacct() would be susceptible to deadlocks, but we have
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 399 * deadlock avoidance code that resubmits any blocked bios from a rescuer
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 400 * thread.
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 401 *
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 402 * However, we do not guarantee forward progress for allocations from other
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 403 * mempools. Doing multiple allocations from the same mempool under
ed00aabd5eb9fb4 block/bio.c Christoph Hellwig 2020-07-01 404 * submit_bio_noacct() should be avoided - instead, use bio_set's front_pad
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 405 * for per bio allocations.
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 406 *
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 407 * RETURNS:
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 408 * Pointer to new bio on success, NULL on failure.
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 409 */
6381672514c4d94 block/bio.c Li Lingfeng 2025-02-10 410 struct bio *bio_alloc_bioset(gfp_t gfp_mask, unsigned int nr_iovecs_int,
7a88fa191944589 block/bio.c Dan Carpenter 2017-03-23 411 struct bio_set *bs)
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 @412 {
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 413 gfp_t saved_gfp = gfp_mask;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 414 unsigned front_pad;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 415 unsigned inline_vecs;
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 416 struct bio_vec *bvl = NULL;
451a9ebf653d283 fs/bio.c Tejun Heo 2009-04-15 417 struct bio *bio;
451a9ebf653d283 fs/bio.c Tejun Heo 2009-04-15 418 void *p;
6381672514c4d94 block/bio.c Li Lingfeng 2025-02-10 419 unsigned short nr_iovecs = (unsigned short)nr_iovecs_int;
0a0d96b03a1f3bf fs/bio.c Jens Axboe 2008-09-11 420
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 421 if (!bs) {
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 422 if (nr_iovecs > UIO_MAXIOV)
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 423 return NULL;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 424
1f4fe21cf45c799 block/bio.c Gustavo A. R. Silva 2020-06-19 425 p = kmalloc(struct_size(bio, bi_inline_vecs, nr_iovecs), gfp_mask);
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 426 front_pad = 0;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 427 inline_vecs = nr_iovecs;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 428 } else {
d8f429e1669b970 block/bio.c Junichi Nomura 2014-10-03 429 /* should not use nobvec bioset for nr_iovecs > 0 */
8aa6ba2f6e3deaf block/bio.c Kent Overstreet 2018-05-08 430 if (WARN_ON_ONCE(!mempool_initialized(&bs->bvec_pool) &&
8aa6ba2f6e3deaf block/bio.c Kent Overstreet 2018-05-08 431 nr_iovecs > 0))
d8f429e1669b970 block/bio.c Junichi Nomura 2014-10-03 432 return NULL;
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 433 /*
ed00aabd5eb9fb4 block/bio.c Christoph Hellwig 2020-07-01 434 * submit_bio_noacct() converts recursion to iteration; this
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 435 * means if we're running beneath it, any bios we allocate and
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 436 * submit will not be submitted (and thus freed) until after we
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 437 * return.
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 438 *
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 439 * This exposes us to a potential deadlock if we allocate
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 440 * multiple bios from the same bio_set() while running
ed00aabd5eb9fb4 block/bio.c Christoph Hellwig 2020-07-01 441 * underneath submit_bio_noacct(). If we were to allocate
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 442 * multiple bios (say a stacking block driver that was splitting
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 443 * bios), we would deadlock if we exhausted the mempool's
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 444 * reserve.
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 445 *
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 446 * We solve this, and guarantee forward progress, with a rescuer
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 447 * workqueue per bio_set. If we go to allocate and there are
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 448 * bios on current->bio_list, we first try the allocation
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 449 * without __GFP_DIRECT_RECLAIM; if that fails, we punt those
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 450 * bios we would be blocking to the rescuer workqueue before
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 451 * we retry with the original gfp_flags.
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 452 */
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 453
f5fe1b51905df7c block/bio.c NeilBrown 2017-03-10 454 if (current->bio_list &&
f5fe1b51905df7c block/bio.c NeilBrown 2017-03-10 455 (!bio_list_empty(¤t->bio_list[0]) ||
47e0fb461fca1a6 block/bio.c NeilBrown 2017-06-18 456 !bio_list_empty(¤t->bio_list[1])) &&
47e0fb461fca1a6 block/bio.c NeilBrown 2017-06-18 457 bs->rescue_workqueue)
d0164adc89f6bb3 block/bio.c Mel Gorman 2015-11-06 458 gfp_mask &= ~__GFP_DIRECT_RECLAIM;
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 459
8aa6ba2f6e3deaf block/bio.c Kent Overstreet 2018-05-08 460 p = mempool_alloc(&bs->bio_pool, gfp_mask);
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 461 if (!p && gfp_mask != saved_gfp) {
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 462 punt_bios_to_rescuer(bs);
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 463 gfp_mask = saved_gfp;
8aa6ba2f6e3deaf block/bio.c Kent Overstreet 2018-05-08 464 p = mempool_alloc(&bs->bio_pool, gfp_mask);
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 465 }
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 466
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 467 front_pad = bs->front_pad;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 468 inline_vecs = BIO_INLINE_VECS;
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 469 }
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 470
451a9ebf653d283 fs/bio.c Tejun Heo 2009-04-15 471 if (unlikely(!p))
451a9ebf653d283 fs/bio.c Tejun Heo 2009-04-15 472 return NULL;
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 473
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 474 bio = p + front_pad;
3a83f4677539bce block/bio.c Ming Lei 2016-11-22 475 bio_init(bio, NULL, 0);
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 476
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 477 if (nr_iovecs > inline_vecs) {
ed996a52c868b62 block/bio.c Christoph Hellwig 2016-07-19 478
958384da6a734eb block/bio.c Christoph Hellwig 2025-02-10 479 bvl = bvec_alloc(&bs->bvec_pool, &nr_iovecs, gfp_mask);
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 480 if (!bvl && gfp_mask != saved_gfp) {
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 481 punt_bios_to_rescuer(bs);
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 482 gfp_mask = saved_gfp;
958384da6a734eb block/bio.c Christoph Hellwig 2025-02-10 483 bvl = bvec_alloc(&bs->bvec_pool, &nr_iovecs, gfp_mask);
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 484 }
df2cb6daa4cbc34 fs/bio.c Kent Overstreet 2012-09-10 485
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 486 if (unlikely(!bvl))
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 487 goto err_free;
a38352e0ac02dbb fs/bio.c Kent Overstreet 2012-05-25 488
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 489 } else if (nr_iovecs) {
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 490 bvl = bio->bi_inline_vecs;
392ddc32982a5c6 fs/bio.c Jens Axboe 2008-12-23 491 }
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 492
3f86a82aeb03e61 fs/bio.c Kent Overstreet 2012-09-06 493 bio->bi_pool = bs;
392ddc32982a5c6 fs/bio.c Jens Axboe 2008-12-23 494 bio->bi_max_vecs = nr_iovecs;
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 495 bio->bi_io_vec = bvl;
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 496 return bio;
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 497
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 498 err_free:
8aa6ba2f6e3deaf block/bio.c Kent Overstreet 2018-05-08 499 mempool_free(p, &bs->bio_pool);
34053979fb1d923 fs/bio.c Ingo Molnar 2009-02-21 500 return NULL;
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 501 }
a112a71d45b5e40 fs/bio.c H Hartley Sweeten 2009-09-26 502 EXPORT_SYMBOL(bio_alloc_bioset);
^1da177e4c3f415 fs/bio.c Linus Torvalds 2005-04-16 503
:::::: The code at line 412 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds(a)ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds(a)ppc970.osdl.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0