Kernel
Threads by month
- ----- 2025 -----
- 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
October 2024
- 79 participants
- 925 discussions

[openeuler:openEuler-1.0-LTS 3328/23811] drivers/char/ipmi/ipmi_si_intf.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 06 Oct '24
by kernel test robot 06 Oct '24
06 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: 5c63bd0fa5e86474d30ecd06d67f2393de081434
commit: 221a9ce1bd3b42ba2226d22663110aed96ae471b [3328/23811] ipmi_si: Fix crash when using hard-coded device
config: x86_64-buildonly-randconfig-003-20240925 (https://download.01.org/0day-ci/archive/20241006/202410060723.NM8MwCWb-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/20241006/202410060723.NM8MwCWb-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/202410060723.NM8MwCWb-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/char/ipmi/ipmi_si_intf.c:22:
include/linux/module.h:133:13: warning: 'init_module' specifies less restrictive attribute than its target 'init_ipmi_si': 'cold' [-Wmissing-attributes]
133 | int init_module(void) __attribute__((alias(#initfn)));
| ^~~~~~~~~~~
drivers/char/ipmi/ipmi_si_intf.c:2175:1: note: in expansion of macro 'module_init'
2175 | module_init(init_ipmi_si);
| ^~~~~~~~~~~
drivers/char/ipmi/ipmi_si_intf.c:2109:19: note: 'init_module' target declared here
2109 | static int __init init_ipmi_si(void)
| ^~~~~~~~~~~~
>> drivers/char/ipmi/ipmi_si_intf.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 6289/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2888:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_linkrate_write' 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: 7add7cc0243793dca7bdeeb53c37212a87076c69 [6289/23811] hisi_sas: add the bist loopback feature.
config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410041051.A286AcSf-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce: (https://download.01.org/0day-ci/archive/20241004/202410041051.A286AcSf-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/202410041051.A286AcSf-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/scsi/hisi_sas/hisi_sas_main.c:1660: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:1660:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1660:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:1917: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:1917:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed
drivers/scsi/hisi_sas/hisi_sas_main.c:1917:52: sparse: got restricted __le16 [usertype]
drivers/scsi/hisi_sas/hisi_sas_main.c:2800: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:2827:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2888:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_linkrate_write' was not declared. Should it be static?
>> drivers/scsi/hisi_sas/hisi_sas_main.c:2979:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_code_mode_write' was not declared. Should it be static?
>> drivers/scsi/hisi_sas/hisi_sas_main.c:3034:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_phy_write' was not declared. Should it be static?
>> drivers/scsi/hisi_sas/hisi_sas_main.c:3120:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_mode_write' was not declared. Should it be static?
>> drivers/scsi/hisi_sas/hisi_sas_main.c:3174:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_enable_write' was not declared. Should it be static?
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64
drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32
drivers/scsi/hisi_sas/hisi_sas_main.c:2801:1: warning: no previous prototype for 'hisi_sas_debugfs_to_reg_name' [-Wmissing-prototypes]
2801 | hisi_sas_debugfs_to_reg_name(int off, int base_off,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c:2888:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_linkrate_write' [-Wmissing-prototypes]
2888 | ssize_t hisi_sas_debugfs_bist_linkrate_write(struct file *filp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c:2979:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_code_mode_write' [-Wmissing-prototypes]
2979 | ssize_t hisi_sas_debugfs_bist_code_mode_write(struct file *filp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c:3034:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_phy_write' [-Wmissing-prototypes]
3034 | ssize_t hisi_sas_debugfs_bist_phy_write(struct file *filp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c:3120:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_mode_write' [-Wmissing-prototypes]
3120 | ssize_t hisi_sas_debugfs_bist_mode_write(struct file *filp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c:3174:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_enable_write' [-Wmissing-prototypes]
3174 | ssize_t hisi_sas_debugfs_bist_enable_write(struct file *filp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/scsi/libsas.h:36,
from include/scsi/sas_ata.h:29,
from drivers/scsi/hisi_sas/hisi_sas.h:29,
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:448:2:
include/scsi/scsi_cmnd.h:333:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized]
333 | 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:418:27: note: 'scsi_cmnd' was declared here
418 | struct scsi_cmnd *scsi_cmnd;
| ^~~~~~~~~
In file included from include/asm-generic/preempt.h:5,
from ./arch/arm64/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:81,
from include/linux/spinlock.h:51,
from include/linux/mmzone.h:9,
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:
In function 'check_object_size',
inlined from 'check_copy_size' at include/linux/thread_info.h:150:2,
inlined from 'copy_from_user' at include/linux/uaccess.h:143:6,
inlined from 'hisi_sas_debugfs_trigger_dump_write' at drivers/scsi/hisi_sas/hisi_sas_main.c:3550:6:
include/linux/thread_info.h:119:17: warning: 'buf' may be used uninitialized [-Wmaybe-uninitialized]
119 | __check_object_size(ptr, n, to_user);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/thread_info.h: In function 'hisi_sas_debugfs_trigger_dump_write':
include/linux/thread_info.h:112:13: note: by argument 1 of type 'const void *' to '__check_object_size' declared here
112 | extern void __check_object_size(const void *ptr, unsigned long n,
| ^~~~~~~~~~~~~~~~~~~
drivers/scsi/hisi_sas/hisi_sas_main.c:3537:12: note: 'buf' declared here
3537 | u8 buf[8];
| ^~~
vim +/hisi_sas_debugfs_bist_linkrate_write +2888 drivers/scsi/hisi_sas/hisi_sas_main.c
2887
> 2888 ssize_t hisi_sas_debugfs_bist_linkrate_write(struct file *filp,
2889 const char __user *buf,
2890 size_t count, loff_t *ppos)
2891 {
2892 struct seq_file *m = filp->private_data;
2893 struct hisi_hba *hisi_hba = m->private;
2894 char kbuf[16] = {}, *pkbuf;
2895 bool found = false;
2896 int i;
2897
2898 if (hisi_hba->bist_loopback_enable)
2899 return -EINVAL;
2900
2901 if (count >= sizeof(kbuf))
2902 return -EINVAL;
2903
2904 if (copy_from_user(kbuf, buf, count))
2905 return -EINVAL;
2906
2907 pkbuf = strstrip(kbuf);
2908
2909 for (i = 0; i < ARRAY_SIZE(hisi_sas_debugfs_loop_linkrate); i++) {
2910 if (!strncmp(hisi_sas_debugfs_loop_linkrate[i].name,
2911 pkbuf, 16)) {
2912 hisi_hba->bist_loopback_linkrate =
2913 hisi_sas_debugfs_loop_linkrate[i].value;
2914 found = true;
2915 break;
2916 }
2917 }
2918
2919 if (!found) {
2920 dev_err(hisi_hba->dev, "unknown mode\n");
2921 return -EINVAL;
2922 }
2923
2924 return count;
2925 }
2926
2927 static int hisi_sas_debugfs_bist_linkrate_open(struct inode *inode,
2928 struct file *filp)
2929 {
2930 return single_open(filp, hisi_sas_debugfs_bist_linkrate_show,
2931 inode->i_private);
2932 }
2933
2934 static const struct file_operations hisi_sas_debugfs_bist_linkrate_ops = {
2935 .open = hisi_sas_debugfs_bist_linkrate_open,
2936 .read = seq_read,
2937 .write = hisi_sas_debugfs_bist_linkrate_write,
2938 .llseek = seq_lseek,
2939 .release = single_release,
2940 .owner = THIS_MODULE,
2941 };
2942
2943 static struct {
2944 int value;
2945 char *name;
2946 } hisi_sas_debugfs_loop_code_mode[] = {
2947 { HISI_SAS_BIST_CODE_MODE_PRBS7, "PRBS7" },
2948 { HISI_SAS_BIST_CODE_MODE_PRBS23, "PRBS23" },
2949 { HISI_SAS_BIST_CODE_MODE_PRBS31, "PRBS31" },
2950 { HISI_SAS_BIST_CODE_MODE_JTPAT, "JTPAT" },
2951 { HISI_SAS_BIST_CODE_MODE_CJTPAT, "CJTPAT" },
2952 { HISI_SAS_BIST_CODE_MODE_SCRAMBED_0, "SCRAMBED_0" },
2953 { HISI_SAS_BIST_CODE_MODE_TRAIN, "TRAIN" },
2954 { HISI_SAS_BIST_CODE_MODE_TRAIN_DONE, "TRAIN_DONE" },
2955 { HISI_SAS_BIST_CODE_MODE_HFTP, "HFTP" },
2956 { HISI_SAS_BIST_CODE_MODE_MFTP, "MFTP" },
2957 { HISI_SAS_BIST_CODE_MODE_LFTP, "LFTP" },
2958 { HISI_SAS_BIST_CODE_MODE_FIXED_DATA, "FIXED_DATA" },
2959 };
2960
2961 static int hisi_sas_debugfs_bist_code_mode_show(struct seq_file *s, void *p)
2962 {
2963 struct hisi_hba *hisi_hba = s->private;
2964 int i;
2965
2966 for (i = 0; i < ARRAY_SIZE(hisi_sas_debugfs_loop_code_mode); i++) {
2967 int match = (hisi_hba->bist_loopback_code_mode ==
2968 hisi_sas_debugfs_loop_code_mode[i].value);
2969
2970 seq_printf(s, "%s%s%s ", match ? "[" : "",
2971 hisi_sas_debugfs_loop_code_mode[i].name,
2972 match ? "]" : "");
2973 }
2974 seq_puts(s, "\n");
2975
2976 return 0;
2977 }
2978
> 2979 ssize_t hisi_sas_debugfs_bist_code_mode_write(struct file *filp,
2980 const char __user *buf,
2981 size_t count, loff_t *ppos)
2982 {
2983 struct seq_file *m = filp->private_data;
2984 struct hisi_hba *hisi_hba = m->private;
2985 char kbuf[16] = {}, *pkbuf;
2986 bool found = false;
2987 int i;
2988
2989 if (hisi_hba->bist_loopback_enable)
2990 return -EINVAL;
2991
2992 if (count >= sizeof(kbuf))
2993 return -EINVAL;
2994
2995 if (copy_from_user(kbuf, buf, count))
2996 return -EINVAL;
2997
2998 pkbuf = strstrip(kbuf);
2999
3000 for (i = 0; i < ARRAY_SIZE(hisi_sas_debugfs_loop_code_mode); i++) {
3001 if (!strncmp(hisi_sas_debugfs_loop_code_mode[i].name,
3002 pkbuf, 16)) {
3003 hisi_hba->bist_loopback_code_mode =
3004 hisi_sas_debugfs_loop_code_mode[i].value;
3005 found = true;
3006 break;
3007 }
3008 }
3009
3010 if (!found) {
3011 dev_err(hisi_hba->dev, "unknown mode\n");
3012 return -EINVAL;
3013 }
3014
3015 return count;
3016 }
3017
3018 static int hisi_sas_debugfs_bist_code_mode_open(struct inode *inode,
3019 struct file *filp)
3020 {
3021 return single_open(filp, hisi_sas_debugfs_bist_code_mode_show,
3022 inode->i_private);
3023 }
3024
3025 static const struct file_operations hisi_sas_debugfs_bist_code_mode_ops = {
3026 .open = hisi_sas_debugfs_bist_code_mode_open,
3027 .read = seq_read,
3028 .write = hisi_sas_debugfs_bist_code_mode_write,
3029 .llseek = seq_lseek,
3030 .release = single_release,
3031 .owner = THIS_MODULE,
3032 };
3033
> 3034 ssize_t hisi_sas_debugfs_bist_phy_write(struct file *filp,
3035 const char __user *buf,
3036 size_t count, loff_t *ppos)
3037 {
3038 struct seq_file *m = filp->private_data;
3039 struct hisi_hba *hisi_hba = m->private;
3040 char kbuf[16] = {}, *pkbuf;
3041 int val, phy;
3042
3043 if (hisi_hba->bist_loopback_enable)
3044 return -EINVAL;
3045
3046 if (count >= sizeof(kbuf))
3047 return -EINVAL;
3048
3049 if (copy_from_user(kbuf, buf, count))
3050 return -EINVAL;
3051
3052 pkbuf = strstrip(kbuf);
3053
3054 val = kstrtoint(pkbuf, 0, &phy);
3055 if (val < 0)
3056 return val;
3057
3058 if (phy >= hisi_hba->n_phy) {
3059 dev_err(hisi_hba->dev, "phy index %d exceeds limit\n", phy);
3060 return -EINVAL;
3061 }
3062
3063 hisi_hba->bist_loopback_phy_id = phy;
3064
3065 return count;
3066 }
3067
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[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