All of lore.kernel.org
 help / color / mirror / Atom feed
* [djiang:cxl/features 11/15] drivers/cxl/core/mbox.c:775 cxl_walk_cel() error: we previously assumed 'cmd' could be null (see line 767)
@ 2024-12-13 17:51 kernel test robot
  0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2024-12-13 17:51 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Dave Jiang <dave.jiang@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/djiang/linux.git cxl/features
head:   f0a6d114e94c15c348733978c4dad4ecdae16d16
commit: 96d766b4e53edf0c9ef84fa447b7afe6fbeeb743 [11/15] cxl: Enumerate feature commands
:::::: branch date: 21 hours ago
:::::: commit date: 24 hours ago
config: i386-randconfig-141-20241213 (https://download.01.org/0day-ci/archive/20241214/202412140111.UkB1YSO2-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0

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>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202412140111.UkB1YSO2-lkp@intel.com/

smatch warnings:
drivers/cxl/core/mbox.c:775 cxl_walk_cel() error: we previously assumed 'cmd' could be null (see line 767)

vim +/cmd +775 drivers/cxl/core/mbox.c

4faf31b43468c58 Dan Williams     2021-09-08  742  
4faf31b43468c58 Dan Williams     2021-09-08  743  /**
4faf31b43468c58 Dan Williams     2021-09-08  744   * cxl_walk_cel() - Walk through the Command Effects Log.
59f8d1510739e92 Dan Williams     2023-06-14  745   * @mds: The driver data for the operation
4faf31b43468c58 Dan Williams     2021-09-08  746   * @size: Length of the Command Effects Log.
4faf31b43468c58 Dan Williams     2021-09-08  747   * @cel: CEL
4faf31b43468c58 Dan Williams     2021-09-08  748   *
4faf31b43468c58 Dan Williams     2021-09-08  749   * Iterate over each entry in the CEL and determine if the driver supports the
4faf31b43468c58 Dan Williams     2021-09-08  750   * command. If so, the command is enabled for the device and can be used later.
4faf31b43468c58 Dan Williams     2021-09-08  751   */
59f8d1510739e92 Dan Williams     2023-06-14  752  static void cxl_walk_cel(struct cxl_memdev_state *mds, size_t size, u8 *cel)
4faf31b43468c58 Dan Williams     2021-09-08  753  {
e624d105c460e56 Dave Jiang       2024-06-17  754  	struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox;
49be6dd807511db Dan Williams     2021-09-08  755  	struct cxl_cel_entry *cel_entry;
4faf31b43468c58 Dan Williams     2021-09-08  756  	const int cel_entries = size / sizeof(*cel_entry);
59f8d1510739e92 Dan Williams     2023-06-14  757  	struct device *dev = mds->cxlds.dev;
4faf31b43468c58 Dan Williams     2021-09-08  758  	int i;
4faf31b43468c58 Dan Williams     2021-09-08  759  
49be6dd807511db Dan Williams     2021-09-08  760  	cel_entry = (struct cxl_cel_entry *) cel;
4faf31b43468c58 Dan Williams     2021-09-08  761  
4faf31b43468c58 Dan Williams     2021-09-08  762  	for (i = 0; i < cel_entries; i++) {
4faf31b43468c58 Dan Williams     2021-09-08  763  		u16 opcode = le16_to_cpu(cel_entry[i].opcode);
4faf31b43468c58 Dan Williams     2021-09-08  764  		struct cxl_mem_command *cmd = cxl_mem_find_command(opcode);
d2f706058826b80 Ira Weiny        2023-09-03  765  		int enabled = 0;
4faf31b43468c58 Dan Williams     2021-09-08  766  
d2f706058826b80 Ira Weiny        2023-09-03 @767  		if (cmd) {
e624d105c460e56 Dave Jiang       2024-06-17  768  			set_bit(cmd->info.id, cxl_mbox->enabled_cmds);
d2f706058826b80 Ira Weiny        2023-09-03  769  			enabled++;
96d766b4e53edf0 Dave Jiang       2024-12-11  770  		} else {
96d766b4e53edf0 Dave Jiang       2024-12-11  771  			struct cxl_mem_command *fcmd =
96d766b4e53edf0 Dave Jiang       2024-12-11  772  				cxl_find_feature_command(opcode);
96d766b4e53edf0 Dave Jiang       2024-12-11  773  
96d766b4e53edf0 Dave Jiang       2024-12-11  774  			if (fcmd) {
96d766b4e53edf0 Dave Jiang       2024-12-11 @775  				set_bit(cmd->info.id, cxl_mbox->feature_cmds);
96d766b4e53edf0 Dave Jiang       2024-12-11  776  				enabled++;
96d766b4e53edf0 Dave Jiang       2024-12-11  777  			}
d2f706058826b80 Ira Weiny        2023-09-03  778  		}
d0abf5787adc034 Alison Schofield 2023-04-18  779  
d2f706058826b80 Ira Weiny        2023-09-03  780  		if (cxl_is_poison_command(opcode)) {
59f8d1510739e92 Dan Williams     2023-06-14  781  			cxl_set_poison_cmd_enabled(&mds->poison, opcode);
d2f706058826b80 Ira Weiny        2023-09-03  782  			enabled++;
d2f706058826b80 Ira Weiny        2023-09-03  783  		}
d0abf5787adc034 Alison Schofield 2023-04-18  784  
d2f706058826b80 Ira Weiny        2023-09-03  785  		if (cxl_is_security_command(opcode)) {
ad64f5952ce3ea5 Davidlohr Bueso  2023-07-25  786  			cxl_set_security_cmd_enabled(&mds->security, opcode);
d2f706058826b80 Ira Weiny        2023-09-03  787  			enabled++;
d2f706058826b80 Ira Weiny        2023-09-03  788  		}
ad64f5952ce3ea5 Davidlohr Bueso  2023-07-25  789  
d2f706058826b80 Ira Weiny        2023-09-03  790  		dev_dbg(dev, "Opcode 0x%04x %s\n", opcode,
d2f706058826b80 Ira Weiny        2023-09-03  791  			enabled ? "enabled" : "unsupported by driver");
4faf31b43468c58 Dan Williams     2021-09-08  792  	}
4faf31b43468c58 Dan Williams     2021-09-08  793  }
4faf31b43468c58 Dan Williams     2021-09-08  794  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [djiang:cxl/features 11/15] drivers/cxl/core/mbox.c:775 cxl_walk_cel() error: we previously assumed 'cmd' could be null (see line 767)
@ 2024-12-13 20:16 Dan Carpenter
  0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2024-12-13 20:16 UTC (permalink / raw)
  To: oe-kbuild, Dave Jiang; +Cc: lkp, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/djiang/linux.git cxl/features
head:   f0a6d114e94c15c348733978c4dad4ecdae16d16
commit: 96d766b4e53edf0c9ef84fa447b7afe6fbeeb743 [11/15] cxl: Enumerate feature commands
config: i386-randconfig-141-20241213 (https://download.01.org/0day-ci/archive/20241214/202412140111.UkB1YSO2-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0

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>
| Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
| Closes: https://lore.kernel.org/r/202412140111.UkB1YSO2-lkp@intel.com/

smatch warnings:
drivers/cxl/core/mbox.c:775 cxl_walk_cel() error: we previously assumed 'cmd' could be null (see line 767)

vim +/cmd +775 drivers/cxl/core/mbox.c

59f8d1510739e92 Dan Williams     2023-06-14  752  static void cxl_walk_cel(struct cxl_memdev_state *mds, size_t size, u8 *cel)
4faf31b43468c58 Dan Williams     2021-09-08  753  {
e624d105c460e56 Dave Jiang       2024-06-17  754  	struct cxl_mailbox *cxl_mbox = &mds->cxlds.cxl_mbox;
49be6dd807511db Dan Williams     2021-09-08  755  	struct cxl_cel_entry *cel_entry;
4faf31b43468c58 Dan Williams     2021-09-08  756  	const int cel_entries = size / sizeof(*cel_entry);
59f8d1510739e92 Dan Williams     2023-06-14  757  	struct device *dev = mds->cxlds.dev;
4faf31b43468c58 Dan Williams     2021-09-08  758  	int i;
4faf31b43468c58 Dan Williams     2021-09-08  759  
49be6dd807511db Dan Williams     2021-09-08  760  	cel_entry = (struct cxl_cel_entry *) cel;
4faf31b43468c58 Dan Williams     2021-09-08  761  
4faf31b43468c58 Dan Williams     2021-09-08  762  	for (i = 0; i < cel_entries; i++) {
4faf31b43468c58 Dan Williams     2021-09-08  763  		u16 opcode = le16_to_cpu(cel_entry[i].opcode);
4faf31b43468c58 Dan Williams     2021-09-08  764  		struct cxl_mem_command *cmd = cxl_mem_find_command(opcode);
d2f706058826b80 Ira Weiny        2023-09-03  765  		int enabled = 0;
4faf31b43468c58 Dan Williams     2021-09-08  766  
d2f706058826b80 Ira Weiny        2023-09-03 @767  		if (cmd) {
                                                                    ^^^
NULL check

e624d105c460e56 Dave Jiang       2024-06-17  768  			set_bit(cmd->info.id, cxl_mbox->enabled_cmds);
d2f706058826b80 Ira Weiny        2023-09-03  769  			enabled++;
96d766b4e53edf0 Dave Jiang       2024-12-11  770  		} else {
96d766b4e53edf0 Dave Jiang       2024-12-11  771  			struct cxl_mem_command *fcmd =
96d766b4e53edf0 Dave Jiang       2024-12-11  772  				cxl_find_feature_command(opcode);
96d766b4e53edf0 Dave Jiang       2024-12-11  773  
96d766b4e53edf0 Dave Jiang       2024-12-11  774  			if (fcmd) {
96d766b4e53edf0 Dave Jiang       2024-12-11 @775  				set_bit(cmd->info.id, cxl_mbox->feature_cmds);
                                                                                        ^^^^^
was fcmd, intended here?

96d766b4e53edf0 Dave Jiang       2024-12-11  776  				enabled++;
96d766b4e53edf0 Dave Jiang       2024-12-11  777  			}
d2f706058826b80 Ira Weiny        2023-09-03  778  		}
d0abf5787adc034 Alison Schofield 2023-04-18  779  
d2f706058826b80 Ira Weiny        2023-09-03  780  		if (cxl_is_poison_command(opcode)) {
59f8d1510739e92 Dan Williams     2023-06-14  781  			cxl_set_poison_cmd_enabled(&mds->poison, opcode);
d2f706058826b80 Ira Weiny        2023-09-03  782  			enabled++;
d2f706058826b80 Ira Weiny        2023-09-03  783  		}
d0abf5787adc034 Alison Schofield 2023-04-18  784  
d2f706058826b80 Ira Weiny        2023-09-03  785  		if (cxl_is_security_command(opcode)) {
ad64f5952ce3ea5 Davidlohr Bueso  2023-07-25  786  			cxl_set_security_cmd_enabled(&mds->security, opcode);
d2f706058826b80 Ira Weiny        2023-09-03  787  			enabled++;
d2f706058826b80 Ira Weiny        2023-09-03  788  		}
ad64f5952ce3ea5 Davidlohr Bueso  2023-07-25  789  
d2f706058826b80 Ira Weiny        2023-09-03  790  		dev_dbg(dev, "Opcode 0x%04x %s\n", opcode,
d2f706058826b80 Ira Weiny        2023-09-03  791  			enabled ? "enabled" : "unsupported by driver");
4faf31b43468c58 Dan Williams     2021-09-08  792  	}
4faf31b43468c58 Dan Williams     2021-09-08  793  }

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-12-13 20:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-13 17:51 [djiang:cxl/features 11/15] drivers/cxl/core/mbox.c:775 cxl_walk_cel() error: we previously assumed 'cmd' could be null (see line 767) kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2024-12-13 20:16 Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.