All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: [linux-next:master 2301/7483] drivers/opp/debugfs.c:212:8: warning: Null pointer dereference: new_dev [nullPointer]
Date: Thu, 28 Apr 2022 17:27:00 +0800	[thread overview]
Message-ID: <202204281715.yc2Do2cy-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 6026 bytes --]

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: Xiaomeng Tong <xiam0nd.tong@gmail.com>
CC: Viresh Kumar <viresh.kumar@linaro.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   f02ac5c95dfd45d2f50ecc68d79177de326c668c
commit: c14faabf5364c5b1be115bbc660310966ca7371f [2301/7483] opp: use list iterator only inside the loop
:::::: branch date: 27 hours ago
:::::: commit date: 2 weeks ago
compiler: m68k-linux-gcc (GCC) 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 as appropriate
Reported-by: kernel test robot <lkp@intel.com>


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 <viresh.kumar@linaro.org>
:::::: CC: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

                 reply	other threads:[~2022-04-28  9:27 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202204281715.yc2Do2cy-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.