CC: kbuild-...@lists.01.org BCC: l...@intel.com CC: Alison Schofield <alison.schofi...@intel.com> CC: Vishal Verma <vishal.l.ve...@intel.com> CC: Ira Weiny <ira.we...@intel.com> CC: Ben Widawsky <ben.widaw...@intel.com> CC: Dan Williams <dan.j.willi...@intel.com> TO: Dan Williams <dan.j.willi...@intel.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl.git preview head: b282b26d11c50d48b336fedb5f74b2eca3f7b94c commit: 011dfa10ad42130a9620e4088c4c570066c46893 [56/59] cxl/hdm: Commit decoder state to hardware :::::: branch date: 3 days ago :::::: commit date: 3 days ago config: riscv-randconfig-m041-20220722 (https://download.01.org/0day-ci/archive/20220724/202207242107.ep8eqalr-...@intel.com/config) compiler: riscv64-linux-gcc (GCC) 12.1.0 If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <l...@intel.com> Reported-by: Dan Carpenter <dan.carpen...@oracle.com> New smatch warnings: drivers/cxl/core/region.c:196 cxl_region_decode_commit() error: uninitialized symbol 'rc'. Old smatch warnings: drivers/cxl/core/region.c:205 cxl_region_decode_commit() error: uninitialized symbol 'rc'. drivers/cxl/core/region.c:457 alloc_hpa() error: uninitialized symbol 'res'. drivers/cxl/core/region.c:995 cxl_port_setup_targets() error: uninitialized symbol 'peig'. drivers/cxl/core/region.c:995 cxl_port_setup_targets() error: uninitialized symbol 'peiw'. drivers/cxl/core/region.c:995 cxl_port_setup_targets() error: uninitialized symbol 'eiw'. drivers/cxl/core/region.c:999 cxl_port_setup_targets() error: uninitialized symbol 'peiw'. drivers/cxl/core/region.c:1000 cxl_port_setup_targets() error: uninitialized symbol 'peig'. drivers/cxl/core/region.c:1584 create_pmem_region_store() warn: unsigned 'rc' is never less than zero. vim +/rc +196 drivers/cxl/core/region.c 011dfa10ad4213 Dan Williams 2022-06-08 158 011dfa10ad4213 Dan Williams 2022-06-08 159 static int cxl_region_decode_commit(struct cxl_region *cxlr) 011dfa10ad4213 Dan Williams 2022-06-08 160 { 011dfa10ad4213 Dan Williams 2022-06-08 161 struct cxl_region_params *p = &cxlr->params; 011dfa10ad4213 Dan Williams 2022-06-08 162 int i, rc; 011dfa10ad4213 Dan Williams 2022-06-08 163 011dfa10ad4213 Dan Williams 2022-06-08 164 for (i = 0; i < p->nr_targets; i++) { 011dfa10ad4213 Dan Williams 2022-06-08 165 struct cxl_endpoint_decoder *cxled = p->targets[i]; 011dfa10ad4213 Dan Williams 2022-06-08 166 struct cxl_memdev *cxlmd = cxled_to_memdev(cxled); 011dfa10ad4213 Dan Williams 2022-06-08 167 struct cxl_region_ref *cxl_rr; 011dfa10ad4213 Dan Williams 2022-06-08 168 struct cxl_decoder *cxld; 011dfa10ad4213 Dan Williams 2022-06-08 169 struct cxl_port *iter; 011dfa10ad4213 Dan Williams 2022-06-08 170 struct cxl_ep *ep; 011dfa10ad4213 Dan Williams 2022-06-08 171 011dfa10ad4213 Dan Williams 2022-06-08 172 /* commit bottom up */ 011dfa10ad4213 Dan Williams 2022-06-08 173 for (iter = cxled_to_port(cxled); !is_cxl_root(iter); 011dfa10ad4213 Dan Williams 2022-06-08 174 iter = to_cxl_port(iter->dev.parent)) { 011dfa10ad4213 Dan Williams 2022-06-08 175 cxl_rr = cxl_rr_load(iter, cxlr); 011dfa10ad4213 Dan Williams 2022-06-08 176 cxld = cxl_rr->decoder; 011dfa10ad4213 Dan Williams 2022-06-08 177 rc = cxld->commit(cxld); 011dfa10ad4213 Dan Williams 2022-06-08 178 if (rc) 011dfa10ad4213 Dan Williams 2022-06-08 179 break; 011dfa10ad4213 Dan Williams 2022-06-08 180 } 011dfa10ad4213 Dan Williams 2022-06-08 181 011dfa10ad4213 Dan Williams 2022-06-08 182 /* success, all decoders up to the root are programmed */ 011dfa10ad4213 Dan Williams 2022-06-08 183 if (is_cxl_root(iter)) 011dfa10ad4213 Dan Williams 2022-06-08 184 continue; 011dfa10ad4213 Dan Williams 2022-06-08 185 011dfa10ad4213 Dan Williams 2022-06-08 186 /* programming @iter failed, teardown */ 011dfa10ad4213 Dan Williams 2022-06-08 187 for (ep = cxl_ep_load(iter, cxlmd); ep && iter; 011dfa10ad4213 Dan Williams 2022-06-08 188 iter = ep->next, ep = cxl_ep_load(iter, cxlmd)) { 011dfa10ad4213 Dan Williams 2022-06-08 189 cxl_rr = cxl_rr_load(iter, cxlr); 011dfa10ad4213 Dan Williams 2022-06-08 190 cxld = cxl_rr->decoder; 011dfa10ad4213 Dan Williams 2022-06-08 191 cxld->reset(cxld); 011dfa10ad4213 Dan Williams 2022-06-08 192 } 011dfa10ad4213 Dan Williams 2022-06-08 193 011dfa10ad4213 Dan Williams 2022-06-08 194 cxled->cxld.reset(&cxled->cxld); 011dfa10ad4213 Dan Williams 2022-06-08 195 if (i == 0) 011dfa10ad4213 Dan Williams 2022-06-08 @196 return rc; 011dfa10ad4213 Dan Williams 2022-06-08 197 break; 011dfa10ad4213 Dan Williams 2022-06-08 198 } 011dfa10ad4213 Dan Williams 2022-06-08 199 011dfa10ad4213 Dan Williams 2022-06-08 200 if (i >= p->nr_targets) 011dfa10ad4213 Dan Williams 2022-06-08 201 return 0; 011dfa10ad4213 Dan Williams 2022-06-08 202 011dfa10ad4213 Dan Williams 2022-06-08 203 /* undo the targets that were successfully committed */ 011dfa10ad4213 Dan Williams 2022-06-08 204 cxl_region_decode_reset(cxlr, i); 011dfa10ad4213 Dan Williams 2022-06-08 205 return rc; 011dfa10ad4213 Dan Williams 2022-06-08 206 } 011dfa10ad4213 Dan Williams 2022-06-08 207 -- 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