Kernel
Threads by month
- ----- 2025 -----
- 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
- 55 participants
- 18788 discussions

[openeuler:openEuler-1.0-LTS 3349/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2711:12: sparse: sparse: symbol 'hisi_sas_debugfs_to_reg_name' was not declared. Should it be static?
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 82153b96f94df7483e215df3057befe744915991 [3349/23811] scsi: hisi_sas: Sync upstream version of DFX feature code
config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040809.szghfgF1-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040809.szghfgF1-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/202410040809.szghfgF1-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/scsi/hisi_sas/hisi_sas_main.c:1623:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_main.c:1623:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1623:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:1871:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_main.c:1871:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1871:52: sparse: got restricted __le16 [usertype]
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2711:12: sparse: sparse: symbol 'hisi_sas_debugfs_to_reg_name' was not declared. Should it be static?
drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2712:1: warning: no previous prototype for 'hisi_sas_debugfs_to_reg_name' [-Wmissing-prototypes]
2712 | hisi_sas_debugfs_to_reg_name(int off, int base_off,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/scsi/libsas.h:36,
from include/scsi/sas_ata.h:29,
from drivers/scsi/hisi_sas/hisi_sas.h:28,
from drivers/scsi/hisi_sas/hisi_sas_main.c:12:
In function 'scsi_prot_sglist',
inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:443:2:
include/scsi/scsi_cmnd.h:327:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized]
327 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL;
| ~~~^~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map':
drivers/scsi/hisi_sas/hisi_sas_main.c:413:27: note: 'scsi_cmnd' was declared here
413 | struct scsi_cmnd *scsi_cmnd;
| ^~~~~~~~~
vim +/hisi_sas_debugfs_to_reg_name +2711 drivers/scsi/hisi_sas/hisi_sas_main.c
2710
> 2711 const char *
2712 hisi_sas_debugfs_to_reg_name(int off, int base_off,
2713 const struct hisi_sas_debugfs_reg_lu *lu)
2714 {
2715 for (; lu->name; lu++) {
2716 if (off == lu->off - base_off)
2717 return lu->name;
2718 }
2719
2720 return NULL;
2721 }
2722
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1571/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 5674e8c212d6087835d2a77b9bb7c26f03413d84 [1571/23811] scsi: hisi_sas: Add DFX Feature: IOST create file and add file operations
config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040525.qH3EJS90-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040525.qH3EJS90-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/202410040525.qH3EJS90-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:2664:12: sparse: sparse: symbol 'hisi_sas_reg_name' was not declared. Should it be static?
drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:2664:13: warning: no previous prototype for 'hisi_sas_reg_name' [-Wmissing-prototypes]
2664 | const char *hisi_sas_reg_name(int off,
| ^~~~~~~~~~~~~~~~~
In file included from include/scsi/libsas.h:36,
from include/scsi/sas_ata.h:29,
from drivers/scsi/hisi_sas/hisi_sas.h:28,
from drivers/scsi/hisi_sas/hisi_sas_main.c:12:
In function 'scsi_prot_sglist',
inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:442:2:
include/scsi/scsi_cmnd.h:327:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized]
327 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL;
| ~~~^~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map':
drivers/scsi/hisi_sas/hisi_sas_main.c:412:27: note: 'scsi_cmnd' was declared here
412 | struct scsi_cmnd *scsi_cmnd;
| ^~~~~~~~~
vim +2864 drivers/scsi/hisi_sas/hisi_sas_main.c
2853
2854 static int hisi_sas_show_row_64(struct seq_file *s,
2855 int index,
2856 int sz,
2857 u64 *ptr)
2858 {
2859 int i;
2860
2861 /* completion header size not fixed per HW version */
2862 seq_printf(s, "index %04d:\n\t", index);
2863 for (i = 1; i <= sz / 8; i++, ptr++) {
> 2864 seq_printf(s, " 0x%016llx", le64_to_cpu(*ptr));
2865 /* when print 4 character , new a line */
2866 if (!(i % 4))
2867 seq_puts(s, "\n\t");
2868 }
2869
2870 seq_puts(s, "\n");
2871
2872 return 0;
2873 }
2874
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 21385/23811] drivers/tee/optee/core.c:618:31: sparse: sparse: incorrect type in return expression (different base types)
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 595311cf7e49c781dd26782e4b45fd54bbfb3e40 [21385/23811] optee: model OP-TEE as a platform device/driver
config: arm64-randconfig-r121-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040450.NkRme0Yj-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040450.NkRme0Yj-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/202410040450.NkRme0Yj-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/tee/optee/core.c:618:31: sparse: sparse: incorrect type in return expression (different base types) @@ expected int @@ got void * @@
drivers/tee/optee/core.c:618:31: sparse: expected int
drivers/tee/optee/core.c:618:31: sparse: got void *
drivers/tee/optee/core.c: In function 'optee_probe':
drivers/tee/optee/core.c:618:24: warning: returning 'void *' from a function with return type 'int' makes integer from pointer without a cast [-Wint-conversion]
618 | return ERR_PTR(-EINVAL);
| ^~~~~~~~~~~~~~~~
vim +618 drivers/tee/optee/core.c
595311cf7e49c7 Ard Biesheuvel 2019-12-09 581
595311cf7e49c7 Ard Biesheuvel 2019-12-09 582 static int optee_probe(struct platform_device *pdev)
4fb0a5eb364d23 Jens Wiklander 2015-04-14 583 {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 584 optee_invoke_fn *invoke_fn;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 585 struct tee_shm_pool *pool;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 586 struct optee *optee = NULL;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 587 void *memremaped_shm = NULL;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 588 struct tee_device *teedev;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 589 u32 sec_caps;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 590 int rc;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 591
595311cf7e49c7 Ard Biesheuvel 2019-12-09 592 invoke_fn = get_invoke_func(&pdev->dev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 593 if (IS_ERR(invoke_fn))
595311cf7e49c7 Ard Biesheuvel 2019-12-09 594 return PTR_ERR(invoke_fn);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 595
4fb0a5eb364d23 Jens Wiklander 2015-04-14 596 if (!optee_msg_api_uid_is_optee_api(invoke_fn)) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 597 pr_warn("api uid mismatch\n");
595311cf7e49c7 Ard Biesheuvel 2019-12-09 598 return -EINVAL;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 599 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 600
5c5f80307ab27c Jérôme Forissier 2017-11-24 601 optee_msg_get_os_revision(invoke_fn);
5c5f80307ab27c Jérôme Forissier 2017-11-24 602
4fb0a5eb364d23 Jens Wiklander 2015-04-14 603 if (!optee_msg_api_revision_is_compatible(invoke_fn)) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 604 pr_warn("api revision mismatch\n");
595311cf7e49c7 Ard Biesheuvel 2019-12-09 605 return -EINVAL;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 606 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 607
4fb0a5eb364d23 Jens Wiklander 2015-04-14 608 if (!optee_msg_exchange_capabilities(invoke_fn, &sec_caps)) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 609 pr_warn("capabilities mismatch\n");
595311cf7e49c7 Ard Biesheuvel 2019-12-09 610 return -EINVAL;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 611 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 612
4fb0a5eb364d23 Jens Wiklander 2015-04-14 613 /*
4fb0a5eb364d23 Jens Wiklander 2015-04-14 614 * We have no other option for shared memory, if secure world
4fb0a5eb364d23 Jens Wiklander 2015-04-14 615 * doesn't have any reserved memory we can use we can't continue.
4fb0a5eb364d23 Jens Wiklander 2015-04-14 616 */
4fb0a5eb364d23 Jens Wiklander 2015-04-14 617 if (!(sec_caps & OPTEE_SMC_SEC_CAP_HAVE_RESERVED_SHM))
4fb0a5eb364d23 Jens Wiklander 2015-04-14 @618 return ERR_PTR(-EINVAL);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 619
f58e236c9d665a Volodymyr Babchuk 2017-11-29 620 pool = optee_config_shm_memremap(invoke_fn, &memremaped_shm, sec_caps);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 621 if (IS_ERR(pool))
595311cf7e49c7 Ard Biesheuvel 2019-12-09 622 return PTR_ERR(pool);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 623
4fb0a5eb364d23 Jens Wiklander 2015-04-14 624 optee = kzalloc(sizeof(*optee), GFP_KERNEL);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 625 if (!optee) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 626 rc = -ENOMEM;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 627 goto err;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 628 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 629
4fb0a5eb364d23 Jens Wiklander 2015-04-14 630 optee->invoke_fn = invoke_fn;
d885cc5e0759fc Volodymyr Babchuk 2017-11-29 631 optee->sec_caps = sec_caps;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 632
4fb0a5eb364d23 Jens Wiklander 2015-04-14 633 teedev = tee_device_alloc(&optee_desc, NULL, pool, optee);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 634 if (IS_ERR(teedev)) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 635 rc = PTR_ERR(teedev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 636 goto err;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 637 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 638 optee->teedev = teedev;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 639
4fb0a5eb364d23 Jens Wiklander 2015-04-14 640 teedev = tee_device_alloc(&optee_supp_desc, NULL, pool, optee);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 641 if (IS_ERR(teedev)) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 642 rc = PTR_ERR(teedev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 643 goto err;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 644 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 645 optee->supp_teedev = teedev;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 646
4fb0a5eb364d23 Jens Wiklander 2015-04-14 647 rc = tee_device_register(optee->teedev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 648 if (rc)
4fb0a5eb364d23 Jens Wiklander 2015-04-14 649 goto err;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 650
4fb0a5eb364d23 Jens Wiklander 2015-04-14 651 rc = tee_device_register(optee->supp_teedev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 652 if (rc)
4fb0a5eb364d23 Jens Wiklander 2015-04-14 653 goto err;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 654
4fb0a5eb364d23 Jens Wiklander 2015-04-14 655 mutex_init(&optee->call_queue.mutex);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 656 INIT_LIST_HEAD(&optee->call_queue.waiters);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 657 optee_wait_queue_init(&optee->wait_queue);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 658 optee_supp_init(&optee->supp);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 659 optee->memremaped_shm = memremaped_shm;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 660 optee->pool = pool;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 661
4fb0a5eb364d23 Jens Wiklander 2015-04-14 662 optee_enable_shm_cache(optee);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 663
595311cf7e49c7 Ard Biesheuvel 2019-12-09 664 platform_set_drvdata(pdev, optee);
595311cf7e49c7 Ard Biesheuvel 2019-12-09 665
4fb0a5eb364d23 Jens Wiklander 2015-04-14 666 pr_info("initialized driver\n");
595311cf7e49c7 Ard Biesheuvel 2019-12-09 667 return 0;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 668 err:
4fb0a5eb364d23 Jens Wiklander 2015-04-14 669 if (optee) {
4fb0a5eb364d23 Jens Wiklander 2015-04-14 670 /*
4fb0a5eb364d23 Jens Wiklander 2015-04-14 671 * tee_device_unregister() is safe to call even if the
4fb0a5eb364d23 Jens Wiklander 2015-04-14 672 * devices hasn't been registered with
4fb0a5eb364d23 Jens Wiklander 2015-04-14 673 * tee_device_register() yet.
4fb0a5eb364d23 Jens Wiklander 2015-04-14 674 */
4fb0a5eb364d23 Jens Wiklander 2015-04-14 675 tee_device_unregister(optee->supp_teedev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 676 tee_device_unregister(optee->teedev);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 677 kfree(optee);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 678 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 679 if (pool)
4fb0a5eb364d23 Jens Wiklander 2015-04-14 680 tee_shm_pool_free(pool);
4fb0a5eb364d23 Jens Wiklander 2015-04-14 681 if (memremaped_shm)
4fb0a5eb364d23 Jens Wiklander 2015-04-14 682 memunmap(memremaped_shm);
595311cf7e49c7 Ard Biesheuvel 2019-12-09 683 return rc;
4fb0a5eb364d23 Jens Wiklander 2015-04-14 684 }
4fb0a5eb364d23 Jens Wiklander 2015-04-14 685
:::::: The code at line 618 was first introduced by commit
:::::: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 tee: add OP-TEE driver
:::::: TO: Jens Wiklander <jens.wiklander(a)linaro.org>
:::::: CC: Jens Wiklander <jens.wiklander(a)linaro.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1567/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: bee9d00acd7e651a6ec989ef3e7b1309b24469af [1567/23811] scsi: hisi_sas: Add DFX Feature: Global register create file and add file operations
config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040348.tx3GNMPZ-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040348.tx3GNMPZ-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/202410040348.tx3GNMPZ-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:2664:12: sparse: sparse: symbol 'hisi_sas_reg_name' was not declared. Should it be static?
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2664:13: warning: no previous prototype for 'hisi_sas_reg_name' [-Wmissing-prototypes]
2664 | const char *hisi_sas_reg_name(int off,
| ^~~~~~~~~~~~~~~~~
In file included from include/scsi/libsas.h:36,
from include/scsi/sas_ata.h:29,
from drivers/scsi/hisi_sas/hisi_sas.h:28,
from drivers/scsi/hisi_sas/hisi_sas_main.c:12:
In function 'scsi_prot_sglist',
inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:442:2:
include/scsi/scsi_cmnd.h:327:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized]
327 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL;
| ~~~^~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map':
drivers/scsi/hisi_sas/hisi_sas_main.c:412:27: note: 'scsi_cmnd' was declared here
412 | struct scsi_cmnd *scsi_cmnd;
| ^~~~~~~~~
vim +2692 drivers/scsi/hisi_sas/hisi_sas_main.c
2675
2676 static void hisi_sas_print_reg(u32 *regs_val,
2677 const void *ptr,
2678 struct seq_file *s)
2679 {
2680 const struct hisi_sas_debugfs_reg *reg = ptr;
2681 int i;
2682
2683 for (i = 0; i < reg->count; i++) {
2684 int off = i * 4;
2685 const char *name = hisi_sas_reg_name(off,
2686 reg->base_off,
2687 reg->lu);
2688
2689 if (name)
2690 seq_printf(s, "0x%08x 0x%08x %s\n",
2691 off,
> 2692 le32_to_cpu(regs_val[i]),
2693 name);
2694 else
2695 seq_printf(s, "0x%08x 0x%08x\n",
2696 off,
2697 le32_to_cpu(regs_val[i]));
2698 }
2699 }
2700
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 5957/23811] drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: sparse: incorrect type in argument 2 (different address spaces)
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 2dd8345826607c5d2d6528de872118da554015b6 [5957/23811] vfio: Add support for Shared Virtual Addressing
config: arm64-randconfig-r121-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040218.7HQ3naCI-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040218.7HQ3naCI-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/202410040218.7HQ3naCI-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *[assigned] arg @@ got void * @@
drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: expected void [noderef] <asn:1> *[assigned] arg
drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: got void *
drivers/vfio/vfio_iommu_type1.c:2164:65: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *[assigned] arg @@ got void * @@
drivers/vfio/vfio_iommu_type1.c:2164:65: sparse: expected void [noderef] <asn:1> *[assigned] arg
drivers/vfio/vfio_iommu_type1.c:2164:65: sparse: got void *
drivers/vfio/vfio_iommu_type1.c:1103:26: sparse: sparse: self-comparison always evaluates to false
drivers/vfio/vfio_iommu_type1.c:1103:48: sparse: sparse: self-comparison always evaluates to false
drivers/vfio/vfio_iommu_type1.c:1103:70: sparse: sparse: self-comparison always evaluates to false
vim +2144 drivers/vfio/vfio_iommu_type1.c
2059
2060 static long vfio_iommu_type1_ioctl(void *iommu_data,
2061 unsigned int cmd, unsigned long arg)
2062 {
2063 struct vfio_iommu *iommu = iommu_data;
2064 unsigned long minsz;
2065
2066 if (cmd == VFIO_CHECK_EXTENSION) {
2067 switch (arg) {
2068 case VFIO_TYPE1_IOMMU:
2069 case VFIO_TYPE1v2_IOMMU:
2070 case VFIO_TYPE1_NESTING_IOMMU:
2071 return 1;
2072 case VFIO_DMA_CC_IOMMU:
2073 if (!iommu)
2074 return 0;
2075 return vfio_domains_have_iommu_cache(iommu);
2076 default:
2077 return 0;
2078 }
2079 } else if (cmd == VFIO_IOMMU_GET_INFO) {
2080 struct vfio_iommu_type1_info info;
2081
2082 minsz = offsetofend(struct vfio_iommu_type1_info, iova_pgsizes);
2083
2084 if (copy_from_user(&info, (void __user *)arg, minsz))
2085 return -EFAULT;
2086
2087 if (info.argsz < minsz)
2088 return -EINVAL;
2089
2090 info.flags = VFIO_IOMMU_INFO_PGSIZES;
2091
2092 info.iova_pgsizes = vfio_pgsize_bitmap(iommu);
2093
2094 return copy_to_user((void __user *)arg, &info, minsz) ?
2095 -EFAULT : 0;
2096
2097 } else if (cmd == VFIO_IOMMU_MAP_DMA) {
2098 struct vfio_iommu_type1_dma_map map;
2099 uint32_t mask = VFIO_DMA_MAP_FLAG_READ |
2100 VFIO_DMA_MAP_FLAG_WRITE;
2101
2102 minsz = offsetofend(struct vfio_iommu_type1_dma_map, size);
2103
2104 if (copy_from_user(&map, (void __user *)arg, minsz))
2105 return -EFAULT;
2106
2107 if (map.argsz < minsz || map.flags & ~mask)
2108 return -EINVAL;
2109
2110 return vfio_dma_do_map(iommu, &map);
2111
2112 } else if (cmd == VFIO_IOMMU_UNMAP_DMA) {
2113 struct vfio_iommu_type1_dma_unmap unmap;
2114 long ret;
2115
2116 minsz = offsetofend(struct vfio_iommu_type1_dma_unmap, size);
2117
2118 if (copy_from_user(&unmap, (void __user *)arg, minsz))
2119 return -EFAULT;
2120
2121 if (unmap.argsz < minsz || unmap.flags)
2122 return -EINVAL;
2123
2124 ret = vfio_dma_do_unmap(iommu, &unmap);
2125 if (ret)
2126 return ret;
2127
2128 return copy_to_user((void __user *)arg, &unmap, minsz) ?
2129 -EFAULT : 0;
2130
2131 } else if (cmd == VFIO_IOMMU_BIND) {
2132 struct vfio_iommu_type1_bind bind;
2133
2134 minsz = offsetofend(struct vfio_iommu_type1_bind, flags);
2135
2136 if (copy_from_user(&bind, (void __user *)arg, minsz))
2137 return -EFAULT;
2138
2139 if (bind.argsz < minsz)
2140 return -EINVAL;
2141
2142 switch (bind.flags) {
2143 case VFIO_IOMMU_BIND_PROCESS:
> 2144 return vfio_iommu_type1_bind_process(iommu, (void *)arg,
2145 &bind);
2146 default:
2147 return -EINVAL;
2148 }
2149
2150 } else if (cmd == VFIO_IOMMU_UNBIND) {
2151 struct vfio_iommu_type1_bind bind;
2152
2153 minsz = offsetofend(struct vfio_iommu_type1_bind, flags);
2154
2155 if (copy_from_user(&bind, (void __user *)arg, minsz))
2156 return -EFAULT;
2157
2158 if (bind.argsz < minsz)
2159 return -EINVAL;
2160
2161 switch (bind.flags) {
2162 case VFIO_IOMMU_BIND_PROCESS:
2163 return vfio_iommu_type1_unbind_process(iommu,
2164 (void *)arg,
2165 &bind);
2166 default:
2167 return -EINVAL;
2168 }
2169 }
2170
2171 return -ENOTTY;
2172 }
2173
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 14777/23811] drivers/scsi/huawei/hifc/hifc_queue.c:1965:12: sparse: sparse: cast removes address space '<asn:2>' of expression
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 7fc993d55d1b54ae40e29dfac825a18d04d644c6 [14777/23811] scsi/hifc: add hifc driver FC service module
config: x86_64-randconfig-122-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040129.X3kkQqhf-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241004/202410040129.X3kkQqhf-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/202410040129.X3kkQqhf-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:376:13: sparse: sparse: symbol 'hifc_root_sq_irq' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:1140:13: sparse: sparse: symbol 'hifc_root_rq_irq' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:1697:39: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:1697:39: sparse: expected unsigned short
drivers/scsi/huawei/hifc/hifc_queue.c:1697:39: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:1962:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [assigned] [usertype] dw0 @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:1962:16: sparse: expected unsigned int [addressable] [assigned] [usertype] dw0
drivers/scsi/huawei/hifc/hifc_queue.c:1962:16: sparse: got restricted __be32 [usertype]
>> drivers/scsi/huawei/hifc/hifc_queue.c:1965:12: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16
drivers/scsi/huawei/hifc/hifc_queue.c:2159:41: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:2159:41: sparse: expected unsigned short
drivers/scsi/huawei/hifc/hifc_queue.c:2159:41: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:2128:6: sparse: sparse: symbol 'hifc_update_root_rq_info' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:2163:6: sparse: sparse: symbol 'hifc_root_rqe_analysis' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:2386:6: sparse: sparse: symbol 'hifc_set_scq_irq_cfg' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:2419:13: sparse: sparse: symbol 'hifc_scq_irq' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2904:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] ctrl_ch_val @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:2904:42: sparse: expected unsigned int [usertype] ctrl_ch_val
drivers/scsi/huawei/hifc/hifc_queue.c:2904:42: sparse: got restricted __be32 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2919:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int val_wd1 @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:2919:29: sparse: expected unsigned int val_wd1
drivers/scsi/huawei/hifc/hifc_queue.c:2919:29: sparse: got restricted __be32 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_queue.c:2923:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] val_wd0 @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:2923:29: sparse: expected unsigned int [usertype] val_wd0
drivers/scsi/huawei/hifc/hifc_queue.c:2923:29: sparse: got restricted __be32 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:3646:6: sparse: sparse: symbol 'hifc_invalid_parent_sq' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:4023:14: sparse: sparse: symbol 'hifc_alloc_parent_sq' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:4389:49: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4389:49: sparse: expected unsigned long long
drivers/scsi/huawei/hifc/hifc_queue.c:4389:49: sparse: got restricted __be64 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4394:72: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4394:72: sparse: expected unsigned long long
drivers/scsi/huawei/hifc/hifc_queue.c:4394:72: sparse: got restricted __be64 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4408:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4408:52: sparse: expected unsigned long long
drivers/scsi/huawei/hifc/hifc_queue.c:4408:52: sparse: got restricted __be64 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4416:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] oqid_rd @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4416:42: sparse: expected unsigned short [usertype] oqid_rd
drivers/scsi/huawei/hifc/hifc_queue.c:4416:42: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4418:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] oqid_wr @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4418:42: sparse: expected unsigned short [usertype] oqid_wr
drivers/scsi/huawei/hifc/hifc_queue.c:4418:42: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4450:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] conn_id @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4450:29: sparse: expected unsigned short [usertype] conn_id
drivers/scsi/huawei/hifc/hifc_queue.c:4450:29: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4456:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] scq_num_rcv_cmd @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4456:37: sparse: expected unsigned int [usertype] scq_num_rcv_cmd
drivers/scsi/huawei/hifc/hifc_queue.c:4456:37: sparse: got restricted __be32 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4473:40: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] per_xmit_data_size @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:4473:40: sparse: expected unsigned int [usertype] per_xmit_data_size
drivers/scsi/huawei/hifc/hifc_queue.c:4473:40: sparse: got restricted __be32 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:4511:6: sparse: sparse: symbol 'hifc_init_parent_ctx' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:4559:6: sparse: sparse: symbol 'hifc_map_shared_queue_qid' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_queue.c:5242:45: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long doorbell_record @@ got restricted __be64 [usertype] @@
drivers/scsi/huawei/hifc/hifc_queue.c:5242:45: sparse: expected unsigned long long doorbell_record
drivers/scsi/huawei/hifc/hifc_queue.c:5242:45: sparse: got restricted __be64 [usertype]
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64
--
drivers/scsi/huawei/hifc/hifc_lld.c:67:22: sparse: sparse: symbol 'g_lld_lock' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_lld.c:291:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] manufacture_id @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_lld.c:291:29: sparse: expected unsigned int [usertype] manufacture_id
drivers/scsi/huawei/hifc/hifc_lld.c:291:29: sparse: got restricted __be32 [usertype]
drivers/scsi/huawei/hifc/hifc_lld.c:292:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] resp_code @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_lld.c:292:24: sparse: expected unsigned short [usertype] resp_code
drivers/scsi/huawei/hifc/hifc_lld.c:292:24: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_lld.c:293:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] reason_code @@ got restricted __be16 [usertype] @@
drivers/scsi/huawei/hifc/hifc_lld.c:293:26: sparse: expected unsigned short [usertype] reason_code
drivers/scsi/huawei/hifc/hifc_lld.c:293:26: sparse: got restricted __be16 [usertype]
drivers/scsi/huawei/hifc/hifc_lld.c:333:6: sparse: sparse: symbol 'hifc_get_ppf_hwdev_by_pdev' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_lld.c:362:6: sparse: sparse: symbol 'hifc_event_process' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_lld.c:645:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] cfg_reg_base @@ got void [noderef] <asn:2> *cfg_reg_base @@
drivers/scsi/huawei/hifc/hifc_lld.c:645:32: sparse: expected void *[assigned] cfg_reg_base
drivers/scsi/huawei/hifc/hifc_lld.c:645:32: sparse: got void [noderef] <asn:2> *cfg_reg_base
>> drivers/scsi/huawei/hifc/hifc_lld.c:646:33: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] intr_reg_base @@ got void [noderef] <asn:2> *intr_reg_base @@
drivers/scsi/huawei/hifc/hifc_lld.c:646:33: sparse: expected void *[assigned] intr_reg_base
drivers/scsi/huawei/hifc/hifc_lld.c:646:33: sparse: got void [noderef] <asn:2> *intr_reg_base
>> drivers/scsi/huawei/hifc/hifc_lld.c:647:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] db_base @@ got void [noderef] <asn:2> *db_base @@
drivers/scsi/huawei/hifc/hifc_lld.c:647:27: sparse: expected void *[assigned] db_base
drivers/scsi/huawei/hifc/hifc_lld.c:647:27: sparse: got void [noderef] <asn:2> *db_base
drivers/scsi/huawei/hifc/hifc_lld.c:333:7: warning: no previous prototype for 'hifc_get_ppf_hwdev_by_pdev' [-Wmissing-prototypes]
333 | void *hifc_get_ppf_hwdev_by_pdev(struct pci_dev *pdev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_lld.c:362:6: warning: no previous prototype for 'hifc_event_process' [-Wmissing-prototypes]
362 | void hifc_event_process(void *adapter, struct hifc_event_info *event)
| ^~~~~~~~~~~~~~~~~~
--
>> drivers/scsi/huawei/hifc/hifc_tool.c:90:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void *in_buff @@
drivers/scsi/huawei/hifc/hifc_tool.c:90:43: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_tool.c:90:43: sparse: got void *in_buff
>> drivers/scsi/huawei/hifc/hifc_tool.c:157:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@
drivers/scsi/huawei/hifc/hifc_tool.c:157:32: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_tool.c:157:32: sparse: got void *out_buf
drivers/scsi/huawei/hifc/hifc_tool.c:256:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@
drivers/scsi/huawei/hifc/hifc_tool.c:256:32: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_tool.c:256:32: sparse: got void *out_buf
drivers/scsi/huawei/hifc/hifc_tool.c:386:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@
drivers/scsi/huawei/hifc/hifc_tool.c:386:32: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_tool.c:386:32: sparse: got void *out_buf
drivers/scsi/huawei/hifc/hifc_tool.c:459:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@
drivers/scsi/huawei/hifc/hifc_tool.c:459:32: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_tool.c:459:32: sparse: got void *out_buf
drivers/scsi/huawei/hifc/hifc_tool.c:465:5: sparse: sparse: symbol 'send_to_service_driver' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_tool.c:599:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void * @@
drivers/scsi/huawei/hifc/hifc_tool.c:599:38: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_tool.c:599:38: sparse: got void *
drivers/scsi/huawei/hifc/hifc_tool.c:664:5: sparse: sparse: symbol 'if_nictool_exist' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_tool.c:465:5: warning: no previous prototype for 'send_to_service_driver' [-Wmissing-prototypes]
465 | int send_to_service_driver(struct msg_module *nt_msg, void *buf_in,
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_tool.c:664:5: warning: no previous prototype for 'if_nictool_exist' [-Wmissing-prototypes]
664 | int if_nictool_exist(void)
| ^~~~~~~~~~~~~~~~
--
drivers/scsi/huawei/hifc/hifc_tool_hw.c:36:4: sparse: sparse: symbol 'hifc_physical_port_id' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_tool_hw.c:47:5: sparse: sparse: symbol 'hifc_clp_to_mgmt' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_tool_hw.c:236:6: sparse: sparse: symbol 'hifc_is_in_host' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_tool_hw.c:401:25: sparse: sparse: symbol 'sm_module_cmd_handle' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_tool_hw.c:482:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void * @@
drivers/scsi/huawei/hifc/hifc_tool_hw.c:482:35: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_tool_hw.c:482:35: sparse: got void *
drivers/scsi/huawei/hifc/hifc_tool_hw.c:36:4: warning: no previous prototype for 'hifc_physical_port_id' [-Wmissing-prototypes]
36 | u8 hifc_physical_port_id(void *hwdev)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_tool_hw.c:47:5: warning: no previous prototype for 'hifc_clp_to_mgmt' [-Wmissing-prototypes]
47 | int hifc_clp_to_mgmt(void *hwdev, enum hifc_mod_type mod, u8 cmd,
| ^~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_tool_hw.c:236:6: warning: no previous prototype for 'hifc_is_in_host' [-Wmissing-prototypes]
236 | bool hifc_is_in_host(void)
| ^~~~~~~~~~~~~~~
--
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:62:7: sparse: sparse: symbol 'dbgtool_dev_id' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:63:13: sparse: sparse: symbol 'dbgtool_chr_dev' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:66:14: sparse: sparse: symbol 'dbgtool_d_class' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:69:5: sparse: sparse: symbol 'g_dbgtool_init_flag' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:70:5: sparse: sparse: symbol 'g_dbgtool_ref_cnt' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:202:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got unsigned char [usertype] *cmd @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:202:51: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:202:51: sparse: got unsigned char [usertype] *cmd
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:216:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *ack @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:216:44: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:216:44: sparse: got void *ack
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:150:6: sparse: sparse: symbol 'dbgtool_knl_api_cmd_read' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:269:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got unsigned char [usertype] *cmd @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:269:51: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:269:51: sparse: got unsigned char [usertype] *cmd
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:234:6: sparse: sparse: symbol 'dbgtool_knl_api_cmd_write' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:374:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got struct pf_dev_info *dev_info @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:374:37: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:374:37: sparse: got struct pf_dev_info *dev_info
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:331:6: sparse: sparse: symbol 'dbgtool_knl_pf_dev_info_get' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:393:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got struct ffm_record_info *ffm_rd @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:393:37: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:393:37: sparse: got struct ffm_record_info *ffm_rd
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:389:6: sparse: sparse: symbol 'dbgtool_knl_ffm_info_rd' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:407:6: sparse: sparse: symbol 'dbgtool_knl_ffm_info_clr' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:461:54: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void *buf_in @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:461:54: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:461:54: sparse: got void *buf_in
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:482:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got unsigned short [usertype] *out_size @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:482:44: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:482:44: sparse: got unsigned short [usertype] *out_size
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:489:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *buf_out @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:489:44: sparse: expected void [noderef] <asn:1> *to
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:489:44: sparse: got void *buf_out
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:419:6: sparse: sparse: symbol 'dbgtool_knl_msg_to_up' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:621:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void * @@
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:621:37: sparse: expected void const [noderef] <asn:1> *from
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:621:37: sparse: got void *
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:612:6: sparse: sparse: symbol 'dbgtool_knl_unlocked_ioctl' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:672:6: sparse: sparse: symbol 'ffm_intr_msg_record' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:150:6: warning: no previous prototype for 'dbgtool_knl_api_cmd_read' [-Wmissing-prototypes]
150 | long dbgtool_knl_api_cmd_read(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:234:6: warning: no previous prototype for 'dbgtool_knl_api_cmd_write' [-Wmissing-prototypes]
234 | long dbgtool_knl_api_cmd_write(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:331:6: warning: no previous prototype for 'dbgtool_knl_pf_dev_info_get' [-Wmissing-prototypes]
331 | long dbgtool_knl_pf_dev_info_get(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:389:6: warning: no previous prototype for 'dbgtool_knl_ffm_info_rd' [-Wmissing-prototypes]
389 | long dbgtool_knl_ffm_info_rd(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:407:6: warning: no previous prototype for 'dbgtool_knl_ffm_info_clr' [-Wmissing-prototypes]
407 | void dbgtool_knl_ffm_info_clr(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:419:6: warning: no previous prototype for 'dbgtool_knl_msg_to_up' [-Wmissing-prototypes]
419 | long dbgtool_knl_msg_to_up(struct dbgtool_param *para,
| ^~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:612:6: warning: no previous prototype for 'dbgtool_knl_unlocked_ioctl' [-Wmissing-prototypes]
612 | long dbgtool_knl_unlocked_ioctl(struct file *pfile,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:672:6: warning: no previous prototype for 'ffm_intr_msg_record' [-Wmissing-prototypes]
672 | void ffm_intr_msg_record(void *handle, void *buf_in, u16 in_size,
| ^~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:802: warning: Function parameter or member 'vhwdev' not described in 'dbgtool_knl_init'
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:802: warning: Excess function parameter 'hwdev' description in 'dbgtool_knl_init'
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:897: warning: Function parameter or member 'vhwdev' not described in 'dbgtool_knl_deinit'
drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:897: warning: Excess function parameter 'hwdev' description in 'dbgtool_knl_deinit'
--
drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32
>> drivers/scsi/huawei/hifc/hifc_hwif.c:32:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_hwif.c:32:16: sparse: expected unsigned int val
drivers/scsi/huawei/hifc/hifc_hwif.c:32:16: sparse: got restricted __be32 [usertype]
>> drivers/scsi/huawei/hifc/hifc_hwif.c:453:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *cfg_regs_base @@ got void *cfg_reg_base @@
drivers/scsi/huawei/hifc/hifc_hwif.c:453:29: sparse: expected unsigned char [noderef] [usertype] <asn:2> *cfg_regs_base
drivers/scsi/huawei/hifc/hifc_hwif.c:453:29: sparse: got void *cfg_reg_base
>> drivers/scsi/huawei/hifc/hifc_hwif.c:454:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *intr_regs_base @@ got void *intr_reg_base @@
drivers/scsi/huawei/hifc/hifc_hwif.c:454:30: sparse: expected unsigned char [noderef] [usertype] <asn:2> *intr_regs_base
drivers/scsi/huawei/hifc/hifc_hwif.c:454:30: sparse: got void *intr_reg_base
>> drivers/scsi/huawei/hifc/hifc_hwif.c:457:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *db_base @@ got void *db_base @@
drivers/scsi/huawei/hifc/hifc_hwif.c:457:23: sparse: expected unsigned char [noderef] [usertype] <asn:2> *db_base
drivers/scsi/huawei/hifc/hifc_hwif.c:457:23: sparse: got void *db_base
>> drivers/scsi/huawei/hifc/hifc_hwif.c:517:65: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted gfp_t [usertype] flag @@ got unsigned int flag @@
drivers/scsi/huawei/hifc/hifc_hwif.c:517:65: sparse: expected restricted gfp_t [usertype] flag
drivers/scsi/huawei/hifc/hifc_hwif.c:517:65: sparse: got unsigned int flag
drivers/scsi/huawei/hifc/hifc_hwif.c:532:65: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted gfp_t [usertype] flag @@ got unsigned int flag @@
drivers/scsi/huawei/hifc/hifc_hwif.c:532:65: sparse: expected restricted gfp_t [usertype] flag
drivers/scsi/huawei/hifc/hifc_hwif.c:532:65: sparse: got unsigned int flag
drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'intr_reg_base' not described in 'hifc_init_hwif'
drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'db_base_phy' not described in 'hifc_init_hwif'
drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'db_base' not described in 'hifc_init_hwif'
drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'dwqe_mapping' not described in 'hifc_init_hwif'
--
drivers/scsi/huawei/hifc/hifc_cmdq.c:345:20: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [usertype] db_info @@ got restricted __be32 [usertype] @@
drivers/scsi/huawei/hifc/hifc_cmdq.c:345:20: sparse: expected unsigned int [addressable] [usertype] db_info
drivers/scsi/huawei/hifc/hifc_cmdq.c:345:20: sparse: got restricted __be32 [usertype]
>> drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: sparse: cast removes address space '<asn:2>' of expression
>> drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] <asn:2> *addr @@ got unsigned char [usertype] * @@
drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: expected void volatile [noderef] <asn:2> *addr
drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: got unsigned char [usertype] *
drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:495:40: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] @@ got restricted __be64 [usertype] @@
drivers/scsi/huawei/hifc/hifc_cmdq.c:495:40: sparse: expected unsigned long long [usertype]
drivers/scsi/huawei/hifc/hifc_cmdq.c:495:40: sparse: got restricted __be64 [usertype]
drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64
drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:26: sparse: sparse: cast removes address space '<asn:2>' of expression
>> drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *db_base @@ got unsigned char [usertype] * @@
drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:23: sparse: expected unsigned char [noderef] [usertype] <asn:2> *db_base
drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:23: sparse: got unsigned char [usertype] *
drivers/scsi/huawei/hifc/hifc_cmdq.c:1316:5: sparse: sparse: symbol 'hifc_set_cmdq_ctxts' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_cmdq.c:1316:5: warning: no previous prototype for 'hifc_set_cmdq_ctxts' [-Wmissing-prototypes]
1316 | int hifc_set_cmdq_ctxts(struct hifc_hwdev *hwdev)
| ^~~~~~~~~~~~~~~~~~~
--
drivers/scsi/huawei/hifc/hifc_cqm_main.c:46:6: sparse: sparse: symbol 'cqm_test_mode_init' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_cqm_main.c:95:5: sparse: sparse: symbol 'cqm_service_capability_init' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_cqm_main.c:114:5: sparse: sparse: symbol 'cqm_capability_init' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_cqm_main.c:431:5: sparse: sparse: symbol 'cqm_db_addr_alloc' was not declared. Should it be static?
drivers/scsi/huawei/hifc/hifc_cqm_main.c:476:6: sparse: sparse: symbol 'cqm_db_addr_free' was not declared. Should it be static?
>> drivers/scsi/huawei/hifc/hifc_cqm_main.c:691:12: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/scsi/huawei/hifc/hifc_cqm_main.c:46:6: warning: no previous prototype for 'cqm_test_mode_init' [-Wmissing-prototypes]
46 | void cqm_test_mode_init(struct cqm_handle_s *cqm_handle,
| ^~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_cqm_main.c:95:5: warning: no previous prototype for 'cqm_service_capability_init' [-Wmissing-prototypes]
95 | s32 cqm_service_capability_init(struct cqm_handle_s *cqm_handle,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_cqm_main.c:114:5: warning: no previous prototype for 'cqm_capability_init' [-Wmissing-prototypes]
114 | s32 cqm_capability_init(void *ex_handle)
| ^~~~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_cqm_main.c:431:5: warning: no previous prototype for 'cqm_db_addr_alloc' [-Wmissing-prototypes]
431 | s32 cqm_db_addr_alloc(void *ex_handle, void __iomem **db_addr,
| ^~~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_cqm_main.c:476:6: warning: no previous prototype for 'cqm_db_addr_free' [-Wmissing-prototypes]
476 | void cqm_db_addr_free(void *ex_handle, void __iomem *db_addr,
| ^~~~~~~~~~~~~~~~
drivers/scsi/huawei/hifc/hifc_cqm_main.c:592: warning: Excess function parameter 'service_type' description in 'cqm_service_unregister'
vim +1965 drivers/scsi/huawei/hifc/hifc_queue.c
31015b9ad992c4 Chenguangli 2020-11-16 1947
31015b9ad992c4 Chenguangli 2020-11-16 1948 static void hifc_ring_root_sq_db(struct hifc_hba_s *v_hba,
31015b9ad992c4 Chenguangli 2020-11-16 1949 struct hifc_root_sq_info_s *v_sq_info)
31015b9ad992c4 Chenguangli 2020-11-16 1950 {
31015b9ad992c4 Chenguangli 2020-11-16 1951 struct nic_tx_doorbell db;
31015b9ad992c4 Chenguangli 2020-11-16 1952
31015b9ad992c4 Chenguangli 2020-11-16 1953 UNF_CHECK_VALID(INVALID_VALUE32, UNF_TRUE, NULL != v_sq_info, return);
31015b9ad992c4 Chenguangli 2020-11-16 1954
31015b9ad992c4 Chenguangli 2020-11-16 1955 memset(&db, 0, sizeof(struct nic_tx_doorbell));
31015b9ad992c4 Chenguangli 2020-11-16 1956
31015b9ad992c4 Chenguangli 2020-11-16 1957 db.bs0.srv_type = HIFC_DOORBELL_SQ_TYPE;
31015b9ad992c4 Chenguangli 2020-11-16 1958 db.bs0.queue_id = v_sq_info->qid;
31015b9ad992c4 Chenguangli 2020-11-16 1959 db.bs0.pi_high = v_sq_info->pi >> HIFC_DOORBELL_SQ_PI_HIGH_BITS_SHIFT;
31015b9ad992c4 Chenguangli 2020-11-16 1960 db.bs0.cos = 0;
31015b9ad992c4 Chenguangli 2020-11-16 1961
31015b9ad992c4 Chenguangli 2020-11-16 1962 db.dw0 = cpu_to_be32(db.dw0);
31015b9ad992c4 Chenguangli 2020-11-16 1963 wmb();
31015b9ad992c4 Chenguangli 2020-11-16 1964
31015b9ad992c4 Chenguangli 2020-11-16 @1965 *((unsigned long long *)(v_sq_info->normal_db.virt_map_addr)
31015b9ad992c4 Chenguangli 2020-11-16 1966 + (v_sq_info->pi & HIFC_DOORBELL_SQ_PI_LOW_BITS_MASK)) =
31015b9ad992c4 Chenguangli 2020-11-16 1967 *(unsigned long long *)&db;
31015b9ad992c4 Chenguangli 2020-11-16 1968 }
31015b9ad992c4 Chenguangli 2020-11-16 1969
:::::: The code at line 1965 was first introduced by commit
:::::: 31015b9ad992c40fc0db81055932bbabe74f2533 scsi/hifc: add hifc driver port resource module
:::::: TO: Chenguangli <chenguangli2(a)huawei.com>
:::::: CC: Yang Yingliang <yangyingliang(a)huawei.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1553/23811] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3553:25: sparse: sparse: symbol 'host_attrs_v2_hw' was not declared. Should it be static?
by kernel test robot 04 Oct '24
by kernel test robot 04 Oct '24
04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: a9cc7cd9ecc843e5cc77a350cfe76ae24421064d [1553/23811] scsi: hisi_sas: add a separate host attribute for every host adapter
config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040135.yxN1SBCM-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040135.yxN1SBCM-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/202410040135.yxN1SBCM-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] val @@ got restricted __le64 [usertype] sas_addr @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: expected unsigned long long [usertype] val
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: got restricted __le64 [usertype] sas_addr
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le64 [usertype] sas_addr @@ got unsigned long long @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:24: sparse: expected restricted __le64 [usertype] sas_addr
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:24: sparse: got unsigned long long
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] trans_tx_fail_type @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: expected unsigned int [usertype] val
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: got restricted __le32 [usertype] trans_tx_fail_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] trans_tx_fail_type @@ got restricted __le32 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: expected unsigned int [usertype] trans_tx_fail_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: got restricted __le32 [usertype]
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] trans_rx_fail_type @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: expected unsigned int [usertype] val
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: got restricted __le32 [usertype] trans_rx_fail_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] trans_rx_fail_type @@ got restricted __le32 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: expected unsigned int [usertype] trans_rx_fail_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: got restricted __le32 [usertype]
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: cast from restricted __le16
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __le16 [usertype] dma_tx_err_type @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: expected unsigned short [usertype] val
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: got restricted __le16 [usertype] dma_tx_err_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: cast from restricted __le16
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: cast from restricted __le16
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned short [usertype] dma_tx_err_type @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: expected unsigned short [usertype] dma_tx_err_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: cast from restricted __le16
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __le16 [usertype] sipc_rx_err_type @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: expected unsigned short [usertype] val
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: got restricted __le16 [usertype] sipc_rx_err_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: cast from restricted __le16
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: cast from restricted __le16
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned short [usertype] sipc_rx_err_type @@ got restricted __le16 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: expected unsigned short [usertype] sipc_rx_err_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] dma_rx_err_type @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: expected unsigned int [usertype] val
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: got restricted __le32 [usertype] dma_rx_err_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] dma_rx_err_type @@ got restricted __le32 [usertype] @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: expected unsigned int [usertype] dma_rx_err_type
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: got restricted __le32 [usertype]
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2383:30: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2409:26: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2410:32: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2411:46: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2538:26: sparse: sparse: invalid assignment: |=
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2538:26: sparse: left side has type restricted __le32
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2538:26: sparse: right side has type int
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3153:51: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] act_tmp @@ got restricted __le32 [usertype] act @@
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3153:51: sparse: expected unsigned int [usertype] act_tmp
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3153:51: sparse: got restricted __le32 [usertype] act
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3156:47: sparse: sparse: restricted __le32 degrades to integer
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3165:48: sparse: sparse: restricted __le64 degrades to integer
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3177:45: sparse: sparse: restricted __le32 degrades to integer
>> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3553:25: sparse: sparse: symbol 'host_attrs_v2_hw' was not declared. Should it be static?
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:773:1: sparse: sparse: context imbalance in 'slot_index_alloc_quirk_v2_hw' - wrong count at exit
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3646:36: warning: 'sas_v2_acpi_match' defined but not used [-Wunused-const-variable=]
3646 | static const struct acpi_device_id sas_v2_acpi_match[] = {
| ^~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c: In function 'clear_itct_v2_hw':
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:987:29: warning: storing the address of local variable 'completion' in '*sas_dev.completion' [-Wdangling-pointer=]
987 | sas_dev->completion = &completion;
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
In file included from include/linux/srcutree.h:28,
from include/linux/srcu.h:62,
from include/linux/notifier.h:16,
from include/linux/memory_hotplug.h:7,
from include/linux/mmzone.h:748,
from include/linux/gfp.h:6,
from include/linux/slab.h:15,
from include/linux/resource_ext.h:19,
from include/linux/acpi.h:26,
from drivers/scsi/hisi_sas/hisi_sas.h:15,
from drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:12:
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:981:36: note: 'completion' declared here
981 | DECLARE_COMPLETION_ONSTACK(completion);
| ^~~~~~~~~~
include/linux/completion.h:70:27: note: in definition of macro 'DECLARE_COMPLETION_ONSTACK'
70 | struct completion work = COMPLETION_INITIALIZER_ONSTACK(work)
| ^~~~
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:979:55: note: 'sas_dev' declared here
979 | struct hisi_sas_device *sas_dev)
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3319: warning: Function parameter or member 'hisi_hba' not described in 'interrupt_init_v2_hw'
vim +/host_attrs_v2_hw +3553 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
3552
> 3553 struct device_attribute *host_attrs_v2_hw[] = {
3554 &dev_attr_phy_event_threshold,
3555 NULL
3556 };
3557
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 20638/23811] drivers/i2c/busses/.tmp_i2c-zhaoxin.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 03 Oct '24
by kernel test robot 03 Oct '24
03 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 735c81b4d33c46ea097f6437f63ea624ccf6dee1 [20638/23811] i2c: Add Zhaoxin I2C driver
config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241003/202410030906.pfPY7k7C-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241003/202410030906.pfPY7k7C-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/202410030906.pfPY7k7C-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/i2c/busses/.tmp_i2c-zhaoxin.o: warning: objtool: missing symbol for section .init.text
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 18554/23811] drivers/net/ethernet/netswift/ngbe/.tmp_ngbe_lib.o: warning: objtool: missing symbol for section .text
by kernel test robot 03 Oct '24
by kernel test robot 03 Oct '24
03 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 206f9c11a8c8b0197da5a26859d96d2ed65f5757 [18554/23811] net: ngbe: Add Netswift Giga NIC driver
config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241003/202410030547.hVYVuqx4-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241003/202410030547.hVYVuqx4-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/202410030547.hVYVuqx4-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from include/linux/sctp.h:57,
from drivers/net/ethernet/netswift/ngbe/ngbe.h:28,
from drivers/net/ethernet/netswift/ngbe/ngbe_lib.c:19:
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/netswift/ngbe/ngbe.h: In function 'ngbe_misc_isb':
drivers/net/ethernet/netswift/ngbe/ngbe.h:764:13: warning: variable 'cur_diff' set but not used [-Wunused-but-set-variable]
764 | u32 cur_diff = 0;
| ^~~~~~~~
>> drivers/net/ethernet/netswift/ngbe/.tmp_ngbe_lib.o: warning: objtool: missing symbol for section .text
--
In file included from include/linux/sctp.h:57,
from drivers/net/ethernet/netswift/ngbe/ngbe.h:28,
from drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:20:
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/netswift/ngbe/ngbe.h: In function 'ngbe_misc_isb':
drivers/net/ethernet/netswift/ngbe/ngbe.h:764:13: warning: variable 'cur_diff' set but not used [-Wunused-but-set-variable]
764 | u32 cur_diff = 0;
| ^~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c: At top level:
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:128:5: warning: no previous prototype for 'ngbe_poll_for_msg' [-Wmissing-prototypes]
128 | int ngbe_poll_for_msg(struct ngbe_hw *hw, u16 mbx_id)
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:158:5: warning: no previous prototype for 'ngbe_poll_for_ack' [-Wmissing-prototypes]
158 | int ngbe_poll_for_ack(struct ngbe_hw *hw, u16 mbx_id)
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:259:5: warning: no previous prototype for 'ngbe_read_v2p_mailbox' [-Wmissing-prototypes]
259 | u32 ngbe_read_v2p_mailbox(struct ngbe_hw *hw)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:277:5: warning: no previous prototype for 'ngbe_check_for_bit_vf' [-Wmissing-prototypes]
277 | int ngbe_check_for_bit_vf(struct ngbe_hw *hw, u32 mask)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:293:5: warning: no previous prototype for 'ngbe_check_for_msg_vf' [-Wmissing-prototypes]
293 | int ngbe_check_for_msg_vf(struct ngbe_hw *hw, u16 mbx_id)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:315:5: warning: no previous prototype for 'ngbe_check_for_ack_vf' [-Wmissing-prototypes]
315 | int ngbe_check_for_ack_vf(struct ngbe_hw *hw, u16 mbx_id)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:337:5: warning: no previous prototype for 'ngbe_check_for_rst_vf' [-Wmissing-prototypes]
337 | int ngbe_check_for_rst_vf(struct ngbe_hw *hw, u16 mbx_id)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:357:5: warning: no previous prototype for 'ngbe_obtain_mbx_lock_vf' [-Wmissing-prototypes]
357 | int ngbe_obtain_mbx_lock_vf(struct ngbe_hw *hw)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:385:5: warning: no previous prototype for 'ngbe_write_mbx_vf' [-Wmissing-prototypes]
385 | int ngbe_write_mbx_vf(struct ngbe_hw *hw, u32 *msg, u16 size,
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:425:5: warning: no previous prototype for 'ngbe_read_mbx_vf' [-Wmissing-prototypes]
425 | int ngbe_read_mbx_vf(struct ngbe_hw *hw, u32 *msg, u16 size,
| ^~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:483:5: warning: no previous prototype for 'ngbe_check_for_bit_pf' [-Wmissing-prototypes]
483 | int ngbe_check_for_bit_pf(struct ngbe_hw *hw, u32 mask)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:503:5: warning: no previous prototype for 'ngbe_check_for_msg_pf' [-Wmissing-prototypes]
503 | int ngbe_check_for_msg_pf(struct ngbe_hw *hw, u16 vf)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:523:5: warning: no previous prototype for 'ngbe_check_for_ack_pf' [-Wmissing-prototypes]
523 | int ngbe_check_for_ack_pf(struct ngbe_hw *hw, u16 vf)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:543:5: warning: no previous prototype for 'ngbe_check_for_rst_pf' [-Wmissing-prototypes]
543 | int ngbe_check_for_rst_pf(struct ngbe_hw *hw, u16 vf)
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:566:5: warning: no previous prototype for 'ngbe_obtain_mbx_lock_pf' [-Wmissing-prototypes]
566 | int ngbe_obtain_mbx_lock_pf(struct ngbe_hw *hw, u16 vf)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:594:5: warning: no previous prototype for 'ngbe_write_mbx_pf' [-Wmissing-prototypes]
594 | int ngbe_write_mbx_pf(struct ngbe_hw *hw, u32 *msg, u16 size,
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:634:5: warning: no previous prototype for 'ngbe_read_mbx_pf' [-Wmissing-prototypes]
634 | int ngbe_read_mbx_pf(struct ngbe_hw *hw, u32 *msg, u16 size,
| ^~~~~~~~~~~~~~~~
>> drivers/net/ethernet/netswift/ngbe/.tmp_ngbe_mbx.o: warning: objtool: missing symbol for section .text
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:OLK-5.10 22806/30000] drivers/md/md.c:4884:38: sparse: sparse: dereference of noderef expression
by kernel test robot 02 Oct '24
by kernel test robot 02 Oct '24
02 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10
head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c
commit: 448fbeaf0f07ea578841346b938245f5c5220b9b [22806/30000] md: protect md_thread with rcu
config: x86_64-randconfig-121-20241002 (https://download.01.org/0day-ci/archive/20241002/202410022132.Z3G20996-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410022132.Z3G20996-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/202410022132.Z3G20996-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/md/md.c:3392:29: sparse: sparse: self-comparison always evaluates to false
drivers/md/md.c:3561:33: sparse: sparse: self-comparison always evaluates to false
drivers/md/md.c:4341:36: sparse: sparse: self-comparison always evaluates to false
>> drivers/md/md.c:4884:38: sparse: sparse: dereference of noderef expression
drivers/md/md.c:5247:30: sparse: sparse: self-comparison always evaluates to false
drivers/md/md.c:5284:30: sparse: sparse: self-comparison always evaluates to false
drivers/md/md.c:5326:30: sparse: sparse: self-comparison always evaluates to false
vim +4884 drivers/md/md.c
24dd469d728dae NeilBrown 2005-11-08 4857
e98a235fdfce57 Yu Kuai 2023-05-31 4858 static void stop_sync_thread(struct mddev *mddev)
24dd469d728dae NeilBrown 2005-11-08 4859 {
e98a235fdfce57 Yu Kuai 2023-05-31 4860 if (!test_bit(MD_RECOVERY_RUNNING, &mddev->recovery))
e98a235fdfce57 Yu Kuai 2023-05-31 4861 return;
7eec314d7512d5 NeilBrown 2005-11-08 4862
e98a235fdfce57 Yu Kuai 2023-05-31 4863 if (mddev_lock(mddev))
e98a235fdfce57 Yu Kuai 2023-05-31 4864 return;
e98a235fdfce57 Yu Kuai 2023-05-31 4865
e98a235fdfce57 Yu Kuai 2023-05-31 4866 /*
e98a235fdfce57 Yu Kuai 2023-05-31 4867 * Check again in case MD_RECOVERY_RUNNING is cleared before lock is
e98a235fdfce57 Yu Kuai 2023-05-31 4868 * held.
e98a235fdfce57 Yu Kuai 2023-05-31 4869 */
e98a235fdfce57 Yu Kuai 2023-05-31 4870 if (!test_bit(MD_RECOVERY_RUNNING, &mddev->recovery)) {
e98a235fdfce57 Yu Kuai 2023-05-31 4871 mddev_unlock(mddev);
e98a235fdfce57 Yu Kuai 2023-05-31 4872 return;
e98a235fdfce57 Yu Kuai 2023-05-31 4873 }
56ccc1125bc141 NeilBrown 2015-05-28 4874
cc1ffe61c026e2 Guoqing Jiang 2020-04-04 4875 if (work_pending(&mddev->del_work))
f851b60db0fd83 NeilBrown 2014-12-11 4876 flush_workqueue(md_misc_wq);
e98a235fdfce57 Yu Kuai 2023-05-31 4877
7eec314d7512d5 NeilBrown 2005-11-08 4878 set_bit(MD_RECOVERY_INTR, &mddev->recovery);
1ade24b66e5223 Yu Kuai 2023-05-31 4879 /*
1ade24b66e5223 Yu Kuai 2023-05-31 4880 * Thread might be blocked waiting for metadata update which will now
1ade24b66e5223 Yu Kuai 2023-05-31 4881 * never happen.
1ade24b66e5223 Yu Kuai 2023-05-31 4882 */
1ade24b66e5223 Yu Kuai 2023-05-31 4883 if (mddev->sync_thread)
1ade24b66e5223 Yu Kuai 2023-05-31 @4884 wake_up_process(mddev->sync_thread->tsk);
e98a235fdfce57 Yu Kuai 2023-05-31 4885
8e8e2518fceca4 NeilBrown 2015-06-12 4886 mddev_unlock(mddev);
7eec314d7512d5 NeilBrown 2005-11-08 4887 }
e98a235fdfce57 Yu Kuai 2023-05-31 4888
:::::: The code at line 4884 was first introduced by commit
:::::: 1ade24b66e52235723afa4554f8cf6ecc2fb29b4 md: refactor idle/frozen_sync_thread()
:::::: TO: Yu Kuai <yukuai3(a)huawei.com>
:::::: CC: Jialin Zhang <zhangjialin11(a)huawei.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0