CC: kbuild-...@lists.01.org BCC: l...@intel.com CC: linux-ker...@vger.kernel.org TO: Jamie Iles <quic_ji...@quicinc.com> CC: Alexandre Belloni <alexandre.bell...@bootlin.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: be2d3ecedd9911fbfd7e55cc9ceac5f8b79ae4cf commit: 72a4501b5d089772671360a6ec74d5350acf8c2e i3c: support dynamically added i2c devices date: 4 weeks ago :::::: branch date: 20 hours ago :::::: commit date: 4 weeks ago config: i386-randconfig-m021 (https://download.01.org/0day-ci/archive/20220403/202204032346.k676yzcx-...@intel.com/config) compiler: gcc-11 (Debian 11.2.0-19) 11.2.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> Reported-by: Dan Carpenter <dan.carpen...@oracle.com> New smatch warnings: drivers/i3c/master.c:2207 i3c_master_i2c_attach() warn: passing a valid pointer to 'PTR_ERR' Old smatch warnings: drivers/i3c/master.c:459 mode_show() warn: unsigned 'i3cbus->mode' is never less than zero. drivers/i3c/master.c:1590 i3c_master_set_info() warn: passing a valid pointer to 'PTR_ERR' drivers/i3c/master.c:1695 i3c_master_bus_init() warn: passing a valid pointer to 'PTR_ERR' drivers/i3c/master.c:1866 i3c_master_add_i3c_dev_locked() warn: passing a valid pointer to 'PTR_ERR' drivers/i3c/master.c:2279 i3c_i2c_notifier_call() error: uninitialized symbol 'ret'. drivers/i3c/master.c:2311 i3c_master_i2c_adapter_init() error: potentially dereferencing uninitialized 'i2cdev'. vim +/PTR_ERR +2207 drivers/i3c/master.c 72a4501b5d0897 Jamie Iles 2022-01-17 2185 72a4501b5d0897 Jamie Iles 2022-01-17 2186 static int i3c_master_i2c_attach(struct i2c_adapter *adap, struct i2c_client *client) 72a4501b5d0897 Jamie Iles 2022-01-17 2187 { 72a4501b5d0897 Jamie Iles 2022-01-17 2188 struct i3c_master_controller *master = i2c_adapter_to_i3c_master(adap); 72a4501b5d0897 Jamie Iles 2022-01-17 2189 enum i3c_addr_slot_status status; 72a4501b5d0897 Jamie Iles 2022-01-17 2190 struct i2c_dev_desc *i2cdev; 72a4501b5d0897 Jamie Iles 2022-01-17 2191 int ret; 72a4501b5d0897 Jamie Iles 2022-01-17 2192 72a4501b5d0897 Jamie Iles 2022-01-17 2193 /* Already added by board info? */ 72a4501b5d0897 Jamie Iles 2022-01-17 2194 if (i3c_master_find_i2c_dev_by_addr(master, client->addr)) 72a4501b5d0897 Jamie Iles 2022-01-17 2195 return 0; 72a4501b5d0897 Jamie Iles 2022-01-17 2196 72a4501b5d0897 Jamie Iles 2022-01-17 2197 status = i3c_bus_get_addr_slot_status(&master->bus, client->addr); 72a4501b5d0897 Jamie Iles 2022-01-17 2198 if (status != I3C_ADDR_SLOT_FREE) 72a4501b5d0897 Jamie Iles 2022-01-17 2199 return -EBUSY; 72a4501b5d0897 Jamie Iles 2022-01-17 2200 72a4501b5d0897 Jamie Iles 2022-01-17 2201 i3c_bus_set_addr_slot_status(&master->bus, client->addr, 72a4501b5d0897 Jamie Iles 2022-01-17 2202 I3C_ADDR_SLOT_I2C_DEV); 72a4501b5d0897 Jamie Iles 2022-01-17 2203 72a4501b5d0897 Jamie Iles 2022-01-17 2204 i2cdev = i3c_master_alloc_i2c_dev(master, client->addr, 72a4501b5d0897 Jamie Iles 2022-01-17 2205 i3c_master_i2c_get_lvr(client)); 72a4501b5d0897 Jamie Iles 2022-01-17 2206 if (IS_ERR(i2cdev)) { 72a4501b5d0897 Jamie Iles 2022-01-17 @2207 ret = PTR_ERR(i2cdev); 72a4501b5d0897 Jamie Iles 2022-01-17 2208 goto out_clear_status; 72a4501b5d0897 Jamie Iles 2022-01-17 2209 } 72a4501b5d0897 Jamie Iles 2022-01-17 2210 72a4501b5d0897 Jamie Iles 2022-01-17 2211 ret = i3c_master_attach_i2c_dev(master, i2cdev); 72a4501b5d0897 Jamie Iles 2022-01-17 2212 if (ret) 72a4501b5d0897 Jamie Iles 2022-01-17 2213 goto out_free_dev; 72a4501b5d0897 Jamie Iles 2022-01-17 2214 72a4501b5d0897 Jamie Iles 2022-01-17 2215 return 0; 72a4501b5d0897 Jamie Iles 2022-01-17 2216 72a4501b5d0897 Jamie Iles 2022-01-17 2217 out_free_dev: 72a4501b5d0897 Jamie Iles 2022-01-17 2218 i3c_master_free_i2c_dev(i2cdev); 72a4501b5d0897 Jamie Iles 2022-01-17 2219 out_clear_status: 72a4501b5d0897 Jamie Iles 2022-01-17 2220 i3c_bus_set_addr_slot_status(&master->bus, client->addr, 72a4501b5d0897 Jamie Iles 2022-01-17 2221 I3C_ADDR_SLOT_FREE); 72a4501b5d0897 Jamie Iles 2022-01-17 2222 72a4501b5d0897 Jamie Iles 2022-01-17 2223 return ret; 72a4501b5d0897 Jamie Iles 2022-01-17 2224 } 72a4501b5d0897 Jamie Iles 2022-01-17 2225 -- 0-DAY CI Kernel Test Service https://01.org/lkp _______________________________________________ kbuild mailing list -- kbuild@lists.01.org To unsubscribe send an email to kbuild-le...@lists.01.org