CC: [email protected]
CC: [email protected]
TO: Ulf Hansson <[email protected]>
CC: "Rafael J. Wysocki" <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   55f62bc873477dae2c45bbbc30b86cf3e0982f3b
commit: 70c179b49870929ca183421935415622d30875b5 cpuidle: psci: Allow PM domain 
to be initialized even if no OSI mode
date:   5 months ago
:::::: branch date: 10 hours ago
:::::: commit date: 5 months ago
config: arm64-randconfig-m031-20210221 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

New smatch warnings:
drivers/cpuidle/cpuidle-psci-domain.c:282 psci_cpuidle_domain_probe() warn: 
missing error code 'ret'

Old smatch warnings:
drivers/cpuidle/cpuidle-psci-domain.c:153 psci_pd_init() error: double free of 
'states'

vim +/ret +282 drivers/cpuidle/cpuidle-psci-domain.c

a65a397f245137 Ulf Hansson 2019-10-10  251  
ee7c34caac3892 Ulf Hansson 2020-07-07  252  static int 
psci_cpuidle_domain_probe(struct platform_device *pdev)
a65a397f245137 Ulf Hansson 2019-10-10  253  {
ee7c34caac3892 Ulf Hansson 2020-07-07  254      struct device_node *np = 
pdev->dev.of_node;
a65a397f245137 Ulf Hansson 2019-10-10  255      struct device_node *node;
70c179b4987092 Ulf Hansson 2020-09-01  256      bool use_osi;
a65a397f245137 Ulf Hansson 2019-10-10  257      int ret = 0, pd_count = 0;
a65a397f245137 Ulf Hansson 2019-10-10  258  
a65a397f245137 Ulf Hansson 2019-10-10  259      if (!np)
a65a397f245137 Ulf Hansson 2019-10-10  260              return -ENODEV;
a65a397f245137 Ulf Hansson 2019-10-10  261  
70c179b4987092 Ulf Hansson 2020-09-01  262      /* If OSI mode is supported, 
let's try to enable it. */
70c179b4987092 Ulf Hansson 2020-09-01  263      use_osi = 
psci_pd_try_set_osi_mode();
a65a397f245137 Ulf Hansson 2019-10-10  264  
a65a397f245137 Ulf Hansson 2019-10-10  265      /*
a65a397f245137 Ulf Hansson 2019-10-10  266       * Parse child nodes for the 
"#power-domain-cells" property and
a65a397f245137 Ulf Hansson 2019-10-10  267       * initialize a 
genpd/genpd-of-provider pair when it's found.
a65a397f245137 Ulf Hansson 2019-10-10  268       */
a65a397f245137 Ulf Hansson 2019-10-10  269      for_each_child_of_node(np, 
node) {
a65a397f245137 Ulf Hansson 2019-10-10  270              if 
(!of_find_property(node, "#power-domain-cells", NULL))
a65a397f245137 Ulf Hansson 2019-10-10  271                      continue;
a65a397f245137 Ulf Hansson 2019-10-10  272  
70c179b4987092 Ulf Hansson 2020-09-01  273              ret = 
psci_pd_init(node, use_osi);
a65a397f245137 Ulf Hansson 2019-10-10  274              if (ret)
a65a397f245137 Ulf Hansson 2019-10-10  275                      goto put_node;
a65a397f245137 Ulf Hansson 2019-10-10  276  
a65a397f245137 Ulf Hansson 2019-10-10  277              pd_count++;
a65a397f245137 Ulf Hansson 2019-10-10  278      }
a65a397f245137 Ulf Hansson 2019-10-10  279  
a65a397f245137 Ulf Hansson 2019-10-10  280      /* Bail out if not using the 
hierarchical CPU topology. */
a65a397f245137 Ulf Hansson 2019-10-10  281      if (!pd_count)
70c179b4987092 Ulf Hansson 2020-09-01 @282              goto no_pd;
a65a397f245137 Ulf Hansson 2019-10-10  283  
a65a397f245137 Ulf Hansson 2019-10-10  284      /* Link genpd 
masters/subdomains to model the CPU topology. */
70c179b4987092 Ulf Hansson 2020-09-01  285      ret = psci_pd_init_topology(np);
a65a397f245137 Ulf Hansson 2019-10-10  286      if (ret)
a65a397f245137 Ulf Hansson 2019-10-10  287              goto remove_pd;
a65a397f245137 Ulf Hansson 2019-10-10  288  
a65a397f245137 Ulf Hansson 2019-10-10  289      pr_info("Initialized CPU PM 
domain topology\n");
ee7c34caac3892 Ulf Hansson 2020-07-07  290      return 0;
a65a397f245137 Ulf Hansson 2019-10-10  291  
a65a397f245137 Ulf Hansson 2019-10-10  292  put_node:
a65a397f245137 Ulf Hansson 2019-10-10  293      of_node_put(node);
a65a397f245137 Ulf Hansson 2019-10-10  294  remove_pd:
a65a397f245137 Ulf Hansson 2019-10-10  295      psci_pd_remove();
a65a397f245137 Ulf Hansson 2019-10-10  296      pr_err("failed to create CPU PM 
domains ret=%d\n", ret);
70c179b4987092 Ulf Hansson 2020-09-01  297  no_pd:
70c179b4987092 Ulf Hansson 2020-09-01  298      if (use_osi)
70c179b4987092 Ulf Hansson 2020-09-01  299              
psci_set_osi_mode(false);
a65a397f245137 Ulf Hansson 2019-10-10  300      return ret;
a65a397f245137 Ulf Hansson 2019-10-10  301  }
ee7c34caac3892 Ulf Hansson 2020-07-07  302  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to