* drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces)
@ 2023-12-18 22:01 kernel test robot
0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2023-12-18 22:01 UTC (permalink / raw)
To: Heiko Stuebner
Cc: oe-kbuild-all, linux-kernel, Palmer Dabbelt, Andrew Jones, Conor Dooley
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 2cf4f94d8e8646803f8fb0facf134b0cd7fb691a
commit: 56e0790c7f9e59ba6a0f4b59981d1d6fbf43efb0 RISC-V: add infrastructure to allow different str* implementations
date: 11 months ago
config: riscv-randconfig-r133-20231218 (https://download.01.org/0day-ci/archive/20231219/202312190535.sXcZRYU4-lkp@intel.com/config)
compiler: clang version 18.0.0git (https://github.com/llvm/llvm-project 5ac12951b4e9bbfcc5791282d0961ec2b65575e9)
reproduce: (https://download.01.org/0day-ci/archive/20231219/202312190535.sXcZRYU4-lkp@intel.com/reproduce)
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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202312190535.sXcZRYU4-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
WARNING: invalid argument to '-march': '_zicbom_zihintpause'
>> drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected char const *ct @@ got char const [noderef] __user *buffer @@
drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: expected char const *ct
drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: got char const [noderef] __user *buffer
drivers/scsi/qedi/qedi_debugfs.c:128:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char *buf @@ got char [noderef] __user *buffer @@
drivers/scsi/qedi/qedi_debugfs.c:128:23: sparse: expected char *buf
drivers/scsi/qedi/qedi_debugfs.c:128:23: sparse: got char [noderef] __user *buffer
drivers/scsi/qedi/qedi_debugfs.c:154:41: sparse: sparse: restricted __le16 degrades to integer
vim +109 drivers/scsi/qedi/qedi_debugfs.c
ace7f46ba5fde72 Manish Rangankar 2016-12-01 13
bd571195c9535c0 Arnd Bergmann 2017-03-02 @14 int qedi_do_not_recover;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 15 static struct dentry *qedi_dbg_root;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 16
ace7f46ba5fde72 Manish Rangankar 2016-12-01 17 void
ace7f46ba5fde72 Manish Rangankar 2016-12-01 18 qedi_dbg_host_init(struct qedi_dbg_ctx *qedi,
779936faf4f1210 Arnd Bergmann 2018-02-02 19 const struct qedi_debugfs_ops *dops,
ace7f46ba5fde72 Manish Rangankar 2016-12-01 20 const struct file_operations *fops)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 21 {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 22 char host_dirname[32];
ace7f46ba5fde72 Manish Rangankar 2016-12-01 23
ace7f46ba5fde72 Manish Rangankar 2016-12-01 24 sprintf(host_dirname, "host%u", qedi->host_no);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 25 qedi->bdf_dentry = debugfs_create_dir(host_dirname, qedi_dbg_root);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 26
ace7f46ba5fde72 Manish Rangankar 2016-12-01 27 while (dops) {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 28 if (!(dops->name))
ace7f46ba5fde72 Manish Rangankar 2016-12-01 29 break;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 30
26febfb38c7d679 Greg Kroah-Hartman 2019-01-22 31 debugfs_create_file(dops->name, 0600, qedi->bdf_dentry, qedi,
ace7f46ba5fde72 Manish Rangankar 2016-12-01 32 fops);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 33 dops++;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 34 fops++;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 35 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 36 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 37
ace7f46ba5fde72 Manish Rangankar 2016-12-01 38 void
ace7f46ba5fde72 Manish Rangankar 2016-12-01 39 qedi_dbg_host_exit(struct qedi_dbg_ctx *qedi)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 40 {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 41 debugfs_remove_recursive(qedi->bdf_dentry);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 42 qedi->bdf_dentry = NULL;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 43 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 44
ace7f46ba5fde72 Manish Rangankar 2016-12-01 45 void
ace7f46ba5fde72 Manish Rangankar 2016-12-01 46 qedi_dbg_init(char *drv_name)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 47 {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 48 qedi_dbg_root = debugfs_create_dir(drv_name, NULL);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 49 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 50
ace7f46ba5fde72 Manish Rangankar 2016-12-01 51 void
ace7f46ba5fde72 Manish Rangankar 2016-12-01 52 qedi_dbg_exit(void)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 53 {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 54 debugfs_remove_recursive(qedi_dbg_root);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 55 qedi_dbg_root = NULL;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 56 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 57
ace7f46ba5fde72 Manish Rangankar 2016-12-01 58 static ssize_t
ace7f46ba5fde72 Manish Rangankar 2016-12-01 59 qedi_dbg_do_not_recover_enable(struct qedi_dbg_ctx *qedi_dbg)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 60 {
bd571195c9535c0 Arnd Bergmann 2017-03-02 61 if (!qedi_do_not_recover)
bd571195c9535c0 Arnd Bergmann 2017-03-02 62 qedi_do_not_recover = 1;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 63
ace7f46ba5fde72 Manish Rangankar 2016-12-01 64 QEDI_INFO(qedi_dbg, QEDI_LOG_DEBUGFS, "do_not_recover=%d\n",
bd571195c9535c0 Arnd Bergmann 2017-03-02 65 qedi_do_not_recover);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 66 return 0;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 67 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 68
ace7f46ba5fde72 Manish Rangankar 2016-12-01 69 static ssize_t
ace7f46ba5fde72 Manish Rangankar 2016-12-01 70 qedi_dbg_do_not_recover_disable(struct qedi_dbg_ctx *qedi_dbg)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 71 {
bd571195c9535c0 Arnd Bergmann 2017-03-02 72 if (qedi_do_not_recover)
bd571195c9535c0 Arnd Bergmann 2017-03-02 73 qedi_do_not_recover = 0;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 74
ace7f46ba5fde72 Manish Rangankar 2016-12-01 75 QEDI_INFO(qedi_dbg, QEDI_LOG_DEBUGFS, "do_not_recover=%d\n",
bd571195c9535c0 Arnd Bergmann 2017-03-02 76 qedi_do_not_recover);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 77 return 0;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 78 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 79
ace7f46ba5fde72 Manish Rangankar 2016-12-01 80 static struct qedi_list_of_funcs qedi_dbg_do_not_recover_ops[] = {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 81 { "enable", qedi_dbg_do_not_recover_enable },
ace7f46ba5fde72 Manish Rangankar 2016-12-01 82 { "disable", qedi_dbg_do_not_recover_disable },
ace7f46ba5fde72 Manish Rangankar 2016-12-01 83 { NULL, NULL }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 84 };
ace7f46ba5fde72 Manish Rangankar 2016-12-01 85
779936faf4f1210 Arnd Bergmann 2018-02-02 86 const struct qedi_debugfs_ops qedi_debugfs_ops[] = {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 87 { "gbl_ctx", NULL },
ace7f46ba5fde72 Manish Rangankar 2016-12-01 88 { "do_not_recover", qedi_dbg_do_not_recover_ops},
ace7f46ba5fde72 Manish Rangankar 2016-12-01 89 { "io_trace", NULL },
ace7f46ba5fde72 Manish Rangankar 2016-12-01 90 { NULL, NULL }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 91 };
ace7f46ba5fde72 Manish Rangankar 2016-12-01 92
ace7f46ba5fde72 Manish Rangankar 2016-12-01 93 static ssize_t
ace7f46ba5fde72 Manish Rangankar 2016-12-01 94 qedi_dbg_do_not_recover_cmd_write(struct file *filp, const char __user *buffer,
ace7f46ba5fde72 Manish Rangankar 2016-12-01 95 size_t count, loff_t *ppos)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 96 {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 97 size_t cnt = 0;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 98 struct qedi_dbg_ctx *qedi_dbg =
ace7f46ba5fde72 Manish Rangankar 2016-12-01 99 (struct qedi_dbg_ctx *)filp->private_data;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 100 struct qedi_list_of_funcs *lof = qedi_dbg_do_not_recover_ops;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 101
ace7f46ba5fde72 Manish Rangankar 2016-12-01 102 if (*ppos)
ace7f46ba5fde72 Manish Rangankar 2016-12-01 103 return 0;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 104
ace7f46ba5fde72 Manish Rangankar 2016-12-01 105 while (lof) {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 106 if (!(lof->oper_str))
ace7f46ba5fde72 Manish Rangankar 2016-12-01 107 break;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 108
ace7f46ba5fde72 Manish Rangankar 2016-12-01 @109 if (!strncmp(lof->oper_str, buffer, strlen(lof->oper_str))) {
ace7f46ba5fde72 Manish Rangankar 2016-12-01 110 cnt = lof->oper_func(qedi_dbg);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 111 break;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 112 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 113
ace7f46ba5fde72 Manish Rangankar 2016-12-01 114 lof++;
ace7f46ba5fde72 Manish Rangankar 2016-12-01 115 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 116 return (count - cnt);
ace7f46ba5fde72 Manish Rangankar 2016-12-01 117 }
ace7f46ba5fde72 Manish Rangankar 2016-12-01 118
:::::: The code at line 109 was first introduced by commit
:::::: ace7f46ba5fde7273207c7122b0650ceb72510e0 scsi: qedi: Add QLogic FastLinQ offload iSCSI driver framework.
:::::: TO: Manish Rangankar <manish.rangankar@cavium.com>
:::::: CC: Martin K. Petersen <martin.petersen@oracle.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 3+ messages in thread
* drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces)
@ 2026-06-26 2:28 kernel test robot
0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-06-26 2:28 UTC (permalink / raw)
To: Thomas Weißschuh
Cc: oe-kbuild-all, linux-kernel, Shuah Khan, Johannes Berg, David Gow
Hi Thomas,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4edcdefd4083ae04b1a5656f4be6cd83ae919ef4
commit: 031cdd3bc3f369553933c1b0f4cb18000162c8ff kunit: Enable PCI on UML without triggering WARN()
date: 9 months ago
config: um-randconfig-r111-20260626 (https://download.01.org/0day-ci/archive/20260626/202606261021.2zXZiUy4-lkp@intel.com/config)
compiler: gcc-13 (Debian 13.3.0-16) 13.3.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260626/202606261021.2zXZiUy4-lkp@intel.com/reproduce)
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
| Fixes: 031cdd3bc3f3 ("kunit: Enable PCI on UML without triggering WARN()")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202606261021.2zXZiUy4-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected char const *ct @@ got char const [noderef] __user *buffer @@
drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: expected char const *ct
drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: got char const [noderef] __user *buffer
drivers/scsi/qedi/qedi_debugfs.c:150:41: sparse: sparse: restricted __le16 degrades to integer
--
drivers/net/wireless/ath/wil6210/debugfs.c: note: in included file:
>> drivers/net/wireless/ath/wil6210/txrx.h:662:23: sparse: sparse: unsigned value that used to be signed checked against zero?
drivers/net/wireless/ath/wil6210/debugfs.c:53:31: sparse: signed value source
>> drivers/net/wireless/ath/wil6210/txrx.h:662:23: sparse: sparse: unsigned value that used to be signed checked against zero?
drivers/net/wireless/ath/wil6210/debugfs.c:1123:39: sparse: signed value source
vim +109 drivers/scsi/qedi/qedi_debugfs.c
ace7f46ba5fde7 Manish Rangankar 2016-12-01 13
bd571195c9535c Arnd Bergmann 2017-03-02 @14 int qedi_do_not_recover;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 15 static struct dentry *qedi_dbg_root;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 16
ace7f46ba5fde7 Manish Rangankar 2016-12-01 17 void
ace7f46ba5fde7 Manish Rangankar 2016-12-01 18 qedi_dbg_host_init(struct qedi_dbg_ctx *qedi,
779936faf4f121 Arnd Bergmann 2018-02-02 19 const struct qedi_debugfs_ops *dops,
ace7f46ba5fde7 Manish Rangankar 2016-12-01 20 const struct file_operations *fops)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 21 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 22 char host_dirname[32];
ace7f46ba5fde7 Manish Rangankar 2016-12-01 23
ace7f46ba5fde7 Manish Rangankar 2016-12-01 24 sprintf(host_dirname, "host%u", qedi->host_no);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 25 qedi->bdf_dentry = debugfs_create_dir(host_dirname, qedi_dbg_root);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 26
ace7f46ba5fde7 Manish Rangankar 2016-12-01 27 while (dops) {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 28 if (!(dops->name))
ace7f46ba5fde7 Manish Rangankar 2016-12-01 29 break;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 30
26febfb38c7d67 Greg Kroah-Hartman 2019-01-22 31 debugfs_create_file(dops->name, 0600, qedi->bdf_dentry, qedi,
ace7f46ba5fde7 Manish Rangankar 2016-12-01 32 fops);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 33 dops++;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 34 fops++;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 35 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 36 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 37
ace7f46ba5fde7 Manish Rangankar 2016-12-01 38 void
ace7f46ba5fde7 Manish Rangankar 2016-12-01 39 qedi_dbg_host_exit(struct qedi_dbg_ctx *qedi)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 40 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 41 debugfs_remove_recursive(qedi->bdf_dentry);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 42 qedi->bdf_dentry = NULL;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 43 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 44
ace7f46ba5fde7 Manish Rangankar 2016-12-01 45 void
ace7f46ba5fde7 Manish Rangankar 2016-12-01 46 qedi_dbg_init(char *drv_name)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 47 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 48 qedi_dbg_root = debugfs_create_dir(drv_name, NULL);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 49 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 50
ace7f46ba5fde7 Manish Rangankar 2016-12-01 51 void
ace7f46ba5fde7 Manish Rangankar 2016-12-01 52 qedi_dbg_exit(void)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 53 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 54 debugfs_remove_recursive(qedi_dbg_root);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 55 qedi_dbg_root = NULL;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 56 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 57
ace7f46ba5fde7 Manish Rangankar 2016-12-01 58 static ssize_t
ace7f46ba5fde7 Manish Rangankar 2016-12-01 59 qedi_dbg_do_not_recover_enable(struct qedi_dbg_ctx *qedi_dbg)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 60 {
bd571195c9535c Arnd Bergmann 2017-03-02 61 if (!qedi_do_not_recover)
bd571195c9535c Arnd Bergmann 2017-03-02 62 qedi_do_not_recover = 1;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 63
ace7f46ba5fde7 Manish Rangankar 2016-12-01 64 QEDI_INFO(qedi_dbg, QEDI_LOG_DEBUGFS, "do_not_recover=%d\n",
bd571195c9535c Arnd Bergmann 2017-03-02 65 qedi_do_not_recover);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 66 return 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 67 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 68
ace7f46ba5fde7 Manish Rangankar 2016-12-01 69 static ssize_t
ace7f46ba5fde7 Manish Rangankar 2016-12-01 70 qedi_dbg_do_not_recover_disable(struct qedi_dbg_ctx *qedi_dbg)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 71 {
bd571195c9535c Arnd Bergmann 2017-03-02 72 if (qedi_do_not_recover)
bd571195c9535c Arnd Bergmann 2017-03-02 73 qedi_do_not_recover = 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 74
ace7f46ba5fde7 Manish Rangankar 2016-12-01 75 QEDI_INFO(qedi_dbg, QEDI_LOG_DEBUGFS, "do_not_recover=%d\n",
bd571195c9535c Arnd Bergmann 2017-03-02 76 qedi_do_not_recover);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 77 return 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 78 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 79
ace7f46ba5fde7 Manish Rangankar 2016-12-01 80 static struct qedi_list_of_funcs qedi_dbg_do_not_recover_ops[] = {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 81 { "enable", qedi_dbg_do_not_recover_enable },
ace7f46ba5fde7 Manish Rangankar 2016-12-01 82 { "disable", qedi_dbg_do_not_recover_disable },
ace7f46ba5fde7 Manish Rangankar 2016-12-01 83 { NULL, NULL }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 84 };
ace7f46ba5fde7 Manish Rangankar 2016-12-01 85
779936faf4f121 Arnd Bergmann 2018-02-02 86 const struct qedi_debugfs_ops qedi_debugfs_ops[] = {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 87 { "gbl_ctx", NULL },
ace7f46ba5fde7 Manish Rangankar 2016-12-01 88 { "do_not_recover", qedi_dbg_do_not_recover_ops},
ace7f46ba5fde7 Manish Rangankar 2016-12-01 89 { "io_trace", NULL },
ace7f46ba5fde7 Manish Rangankar 2016-12-01 90 { NULL, NULL }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 91 };
ace7f46ba5fde7 Manish Rangankar 2016-12-01 92
ace7f46ba5fde7 Manish Rangankar 2016-12-01 93 static ssize_t
ace7f46ba5fde7 Manish Rangankar 2016-12-01 94 qedi_dbg_do_not_recover_cmd_write(struct file *filp, const char __user *buffer,
ace7f46ba5fde7 Manish Rangankar 2016-12-01 95 size_t count, loff_t *ppos)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 96 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 97 size_t cnt = 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 98 struct qedi_dbg_ctx *qedi_dbg =
ace7f46ba5fde7 Manish Rangankar 2016-12-01 99 (struct qedi_dbg_ctx *)filp->private_data;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 100 struct qedi_list_of_funcs *lof = qedi_dbg_do_not_recover_ops;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 101
ace7f46ba5fde7 Manish Rangankar 2016-12-01 102 if (*ppos)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 103 return 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 104
ace7f46ba5fde7 Manish Rangankar 2016-12-01 105 while (lof) {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 106 if (!(lof->oper_str))
ace7f46ba5fde7 Manish Rangankar 2016-12-01 107 break;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 108
ace7f46ba5fde7 Manish Rangankar 2016-12-01 @109 if (!strncmp(lof->oper_str, buffer, strlen(lof->oper_str))) {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 110 cnt = lof->oper_func(qedi_dbg);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 111 break;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 112 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 113
ace7f46ba5fde7 Manish Rangankar 2016-12-01 114 lof++;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 115 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 116 return (count - cnt);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 117 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 118
:::::: The code at line 109 was first introduced by commit
:::::: ace7f46ba5fde7273207c7122b0650ceb72510e0 scsi: qedi: Add QLogic FastLinQ offload iSCSI driver framework.
:::::: TO: Manish Rangankar <manish.rangankar@cavium.com>
:::::: CC: Martin K. Petersen <martin.petersen@oracle.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 3+ messages in thread
* drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces)
@ 2020-06-27 18:54 kernel test robot
0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2020-06-27 18:54 UTC (permalink / raw)
To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 4931 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4e99b32169e84b4ece5a1d74eb0b7e4ef07866b3
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date: 9 days ago
config: x86_64-randconfig-s021-20200628 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-dirty
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
# save the attached .config to linux build tree
make W=1 C=1 ARCH=x86_64 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected char const * @@ got char const [noderef] __user *buffer @@
drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: expected char const *
>> drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: got char const [noderef] __user *buffer
>> drivers/scsi/qedi/qedi_debugfs.c:128:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected char *buf @@ got char [noderef] __user *buffer @@
drivers/scsi/qedi/qedi_debugfs.c:128:23: sparse: expected char *buf
>> drivers/scsi/qedi/qedi_debugfs.c:128:23: sparse: got char [noderef] __user *buffer
drivers/scsi/qedi/qedi_debugfs.c:154:41: sparse: sparse: restricted __le16 degrades to integer
vim +109 drivers/scsi/qedi/qedi_debugfs.c
ace7f46ba5fde7 Manish Rangankar 2016-12-01 92
ace7f46ba5fde7 Manish Rangankar 2016-12-01 93 static ssize_t
ace7f46ba5fde7 Manish Rangankar 2016-12-01 94 qedi_dbg_do_not_recover_cmd_write(struct file *filp, const char __user *buffer,
ace7f46ba5fde7 Manish Rangankar 2016-12-01 95 size_t count, loff_t *ppos)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 96 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 97 size_t cnt = 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 98 struct qedi_dbg_ctx *qedi_dbg =
ace7f46ba5fde7 Manish Rangankar 2016-12-01 99 (struct qedi_dbg_ctx *)filp->private_data;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 100 struct qedi_list_of_funcs *lof = qedi_dbg_do_not_recover_ops;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 101
ace7f46ba5fde7 Manish Rangankar 2016-12-01 102 if (*ppos)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 103 return 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 104
ace7f46ba5fde7 Manish Rangankar 2016-12-01 105 while (lof) {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 106 if (!(lof->oper_str))
ace7f46ba5fde7 Manish Rangankar 2016-12-01 107 break;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 108
ace7f46ba5fde7 Manish Rangankar 2016-12-01 @109 if (!strncmp(lof->oper_str, buffer, strlen(lof->oper_str))) {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 110 cnt = lof->oper_func(qedi_dbg);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 111 break;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 112 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 113
ace7f46ba5fde7 Manish Rangankar 2016-12-01 114 lof++;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 115 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 116 return (count - cnt);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 117 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 118
ace7f46ba5fde7 Manish Rangankar 2016-12-01 119 static ssize_t
ace7f46ba5fde7 Manish Rangankar 2016-12-01 120 qedi_dbg_do_not_recover_cmd_read(struct file *filp, char __user *buffer,
ace7f46ba5fde7 Manish Rangankar 2016-12-01 121 size_t count, loff_t *ppos)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 122 {
ace7f46ba5fde7 Manish Rangankar 2016-12-01 123 size_t cnt = 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 124
ace7f46ba5fde7 Manish Rangankar 2016-12-01 125 if (*ppos)
ace7f46ba5fde7 Manish Rangankar 2016-12-01 126 return 0;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 127
bd571195c9535c Arnd Bergmann 2017-03-02 @128 cnt = sprintf(buffer, "do_not_recover=%d\n", qedi_do_not_recover);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 129 cnt = min_t(int, count, cnt - *ppos);
ace7f46ba5fde7 Manish Rangankar 2016-12-01 130 *ppos += cnt;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 131 return cnt;
ace7f46ba5fde7 Manish Rangankar 2016-12-01 132 }
ace7f46ba5fde7 Manish Rangankar 2016-12-01 133
:::::: The code at line 109 was first introduced by commit
:::::: ace7f46ba5fde7273207c7122b0650ceb72510e0 scsi: qedi: Add QLogic FastLinQ offload iSCSI driver framework.
:::::: TO: Manish Rangankar <manish.rangankar@cavium.com>
:::::: CC: Martin K. Petersen <martin.petersen@oracle.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 35427 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-06-26 2:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-18 22:01 drivers/scsi/qedi/qedi_debugfs.c:109:45: sparse: sparse: incorrect type in argument 2 (different address spaces) kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2026-06-26 2:28 kernel test robot
2020-06-27 18:54 kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®