:::::: :::::: Manual check reason: "low confidence static check warning: drivers/opp/debugfs.c:212:8: warning: Null pointer dereference: new_dev [nullPointer]" ::::::
CC: [email protected] BCC: [email protected] CC: [email protected] TO: Xiaomeng Tong <[email protected]> CC: Viresh Kumar <[email protected]> tree: https://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm.git opp/config head: 2f8b5b70bf8a070271e0f9f63564ad5fbef85a40 commit: c14faabf5364c5b1be115bbc660310966ca7371f [4/40] opp: use list iterator only inside the loop :::::: branch date: 13 hours ago :::::: commit date: 7 weeks ago compiler: gcc-11 (Debian 11.3.0-1) 11.3.0 reproduce (cppcheck warning): # apt-get install cppcheck git checkout c14faabf5364c5b1be115bbc660310966ca7371f cppcheck --quiet --enable=style,performance,portability --template=gcc FILE If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <[email protected]> cppcheck possible warnings: (new ones prefixed by >>, may not real problems) >> drivers/opp/debugfs.c:212:8: warning: Null pointer dereference: new_dev >> [nullPointer] dev = new_dev->dev; ^ drivers/opp/debugfs.c:198:31: note: Assignment 'new_dev=NULL', assigned value is 0 struct opp_device *new_dev = NULL, *iter; ^ drivers/opp/debugfs.c:204:12: note: Assuming condition is false if (iter != opp_dev) { ^ drivers/opp/debugfs.c:212:8: note: Null pointer dereference dev = new_dev->dev; ^ drivers/opp/debugfs.c:213:27: warning: Null pointer dereference: new_dev [nullPointer] debugfs_remove_recursive(new_dev->dentry); ^ drivers/opp/debugfs.c:198:31: note: Assignment 'new_dev=NULL', assigned value is 0 struct opp_device *new_dev = NULL, *iter; ^ drivers/opp/debugfs.c:204:12: note: Assuming condition is false if (iter != opp_dev) { ^ drivers/opp/debugfs.c:213:27: note: Null pointer dereference debugfs_remove_recursive(new_dev->dentry); ^ vim +212 drivers/opp/debugfs.c deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 194 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 195 static void opp_migrate_dentry(struct opp_device *opp_dev, 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 196 struct opp_table *opp_table) deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 197 { c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 198 struct opp_device *new_dev = NULL, *iter; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 199 const struct device *dev; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 200 struct dentry *dentry; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 201 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 202 /* Look for next opp-dev */ c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 203 list_for_each_entry(iter, &opp_table->dev_list, node) c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 204 if (iter != opp_dev) { c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 205 new_dev = iter; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 206 break; c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 207 } c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 208 c14faabf5364c5 drivers/opp/debugfs.c Xiaomeng Tong 2022-03-31 209 BUG_ON(!new_dev); deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 210 deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 211 /* new_dev is guaranteed to be valid here */ deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 @212 dev = new_dev->dev; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 213 debugfs_remove_recursive(new_dev->dentry); deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 214 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 215 opp_set_dev_name(dev, opp_table->dentry_name); deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 216 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 217 dentry = debugfs_rename(rootdir, opp_dev->dentry, rootdir, 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 218 opp_table->dentry_name); deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 219 if (!dentry) { deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 220 dev_err(dev, "%s: Failed to rename link from: %s to %s\n", 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 221 __func__, dev_name(opp_dev->dev), dev_name(dev)); deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 222 return; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 223 } deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 224 deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 225 new_dev->dentry = dentry; 2c2709dc6921c5 drivers/base/power/opp/debugfs.c Viresh Kumar 2016-02-16 226 opp_table->dentry = dentry; deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 227 } deaa51465105a7 drivers/base/power/opp/debugfs.c Viresh Kumar 2015-11-11 228 :::::: The code at line 212 was first introduced by commit :::::: deaa51465105a7eda19a627b10372f4f7c51a4df PM / OPP: Add debugfs support :::::: TO: Viresh Kumar <[email protected]> :::::: CC: Rafael J. Wysocki <[email protected]> -- 0-DAY CI Kernel Test Service https://01.org/lkp _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
