CC: [email protected] In-Reply-To: <[email protected]> References: <[email protected]> TO: Amey Narkhede <[email protected]> TO: Bjorn Helgaas <[email protected]> CC: [email protected] CC: Raphael Norwitz <[email protected]> CC: [email protected] CC: [email protected] CC: [email protected] CC: Shanker Donthineni <[email protected]> CC: Sinan Kaya <[email protected]> CC: Len Brown <[email protected]> CC: "Rafael J . Wysocki" <[email protected]>
Hi Amey, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on pci/next] [also build test WARNING on pm/linux-next cryptodev/master linus/master v5.14-rc4 next-20210804] [cannot apply to crypto/master] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Amey-Narkhede/PCI-Expose-and-manage-PCI-device-reset/20210805-044454 base: https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next :::::: branch date: 12 hours ago :::::: commit date: 12 hours ago config: ia64-randconfig-m031-20210804 (attached as .config) compiler: ia64-linux-gcc (GCC) 10.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]> smatch warnings: drivers/pci/pci.c:5233 reset_method_store() error: uninitialized symbol 'm'. vim +/m +5233 drivers/pci/pci.c 310c3e70b87de5 Amey Narkhede 2021-08-05 5172 310c3e70b87de5 Amey Narkhede 2021-08-05 5173 static ssize_t reset_method_store(struct device *dev, 310c3e70b87de5 Amey Narkhede 2021-08-05 5174 struct device_attribute *attr, 310c3e70b87de5 Amey Narkhede 2021-08-05 5175 const char *buf, size_t count) 310c3e70b87de5 Amey Narkhede 2021-08-05 5176 { 310c3e70b87de5 Amey Narkhede 2021-08-05 5177 struct pci_dev *pdev = to_pci_dev(dev); 310c3e70b87de5 Amey Narkhede 2021-08-05 5178 int i, m, n = 0; 310c3e70b87de5 Amey Narkhede 2021-08-05 5179 char *name, *options = NULL; 310c3e70b87de5 Amey Narkhede 2021-08-05 5180 310c3e70b87de5 Amey Narkhede 2021-08-05 5181 if (count >= (PAGE_SIZE - 1)) 310c3e70b87de5 Amey Narkhede 2021-08-05 5182 return -EINVAL; 310c3e70b87de5 Amey Narkhede 2021-08-05 5183 310c3e70b87de5 Amey Narkhede 2021-08-05 5184 if (sysfs_streq(buf, "")) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5185 goto free_and_exit; 310c3e70b87de5 Amey Narkhede 2021-08-05 5186 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5187 310c3e70b87de5 Amey Narkhede 2021-08-05 5188 if (sysfs_streq(buf, "default")) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5189 pci_init_reset_methods(pdev); 310c3e70b87de5 Amey Narkhede 2021-08-05 5190 return count; 310c3e70b87de5 Amey Narkhede 2021-08-05 5191 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5192 310c3e70b87de5 Amey Narkhede 2021-08-05 5193 options = kstrndup(buf, count, GFP_KERNEL); 310c3e70b87de5 Amey Narkhede 2021-08-05 5194 if (!options) 310c3e70b87de5 Amey Narkhede 2021-08-05 5195 return -ENOMEM; 310c3e70b87de5 Amey Narkhede 2021-08-05 5196 310c3e70b87de5 Amey Narkhede 2021-08-05 5197 while ((name = strsep(&options, " ")) != NULL) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5198 if (sysfs_streq(name, "")) 310c3e70b87de5 Amey Narkhede 2021-08-05 5199 continue; 310c3e70b87de5 Amey Narkhede 2021-08-05 5200 310c3e70b87de5 Amey Narkhede 2021-08-05 5201 name = strim(name); 310c3e70b87de5 Amey Narkhede 2021-08-05 5202 310c3e70b87de5 Amey Narkhede 2021-08-05 5203 for (m = 1; m < PCI_NUM_RESET_METHODS; m++) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5204 if (sysfs_streq(name, pci_reset_fn_methods[m].name)) 310c3e70b87de5 Amey Narkhede 2021-08-05 5205 break; 310c3e70b87de5 Amey Narkhede 2021-08-05 5206 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5207 310c3e70b87de5 Amey Narkhede 2021-08-05 5208 if (m == PCI_NUM_RESET_METHODS) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5209 pci_warn(pdev, "Skip invalid reset method '%s'", name); 310c3e70b87de5 Amey Narkhede 2021-08-05 5210 continue; 310c3e70b87de5 Amey Narkhede 2021-08-05 5211 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5212 310c3e70b87de5 Amey Narkhede 2021-08-05 5213 for (i = 0; i < n; i++) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5214 if (pdev->reset_methods[i] == m) 310c3e70b87de5 Amey Narkhede 2021-08-05 5215 break; 310c3e70b87de5 Amey Narkhede 2021-08-05 5216 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5217 310c3e70b87de5 Amey Narkhede 2021-08-05 5218 if (i < n) 310c3e70b87de5 Amey Narkhede 2021-08-05 5219 continue; 310c3e70b87de5 Amey Narkhede 2021-08-05 5220 310c3e70b87de5 Amey Narkhede 2021-08-05 5221 if (pci_reset_fn_methods[m].reset_fn(pdev, 1)) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5222 pci_warn(pdev, "Unsupported reset method '%s'", name); 310c3e70b87de5 Amey Narkhede 2021-08-05 5223 continue; 310c3e70b87de5 Amey Narkhede 2021-08-05 5224 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5225 310c3e70b87de5 Amey Narkhede 2021-08-05 5226 pdev->reset_methods[n++] = m; 310c3e70b87de5 Amey Narkhede 2021-08-05 5227 BUG_ON(n == PCI_NUM_RESET_METHODS); 310c3e70b87de5 Amey Narkhede 2021-08-05 5228 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5229 310c3e70b87de5 Amey Narkhede 2021-08-05 5230 free_and_exit: 310c3e70b87de5 Amey Narkhede 2021-08-05 5231 kfree(options); 310c3e70b87de5 Amey Narkhede 2021-08-05 5232 /* All the reset methods are invalid */ 310c3e70b87de5 Amey Narkhede 2021-08-05 @5233 if (n == 0 && m == PCI_NUM_RESET_METHODS) 310c3e70b87de5 Amey Narkhede 2021-08-05 5234 return -EINVAL; 310c3e70b87de5 Amey Narkhede 2021-08-05 5235 pdev->reset_methods[n] = 0; 310c3e70b87de5 Amey Narkhede 2021-08-05 5236 if (pdev->reset_methods[0] == 0) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5237 pci_warn(pdev, "All device reset methods disabled by user"); 310c3e70b87de5 Amey Narkhede 2021-08-05 5238 } else if ((pdev->reset_methods[0] != 1) && 310c3e70b87de5 Amey Narkhede 2021-08-05 5239 !pci_reset_fn_methods[1].reset_fn(pdev, 1)) { 310c3e70b87de5 Amey Narkhede 2021-08-05 5240 pci_warn(pdev, "Device specific reset disabled/de-prioritized by user"); 310c3e70b87de5 Amey Narkhede 2021-08-05 5241 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5242 return count; 310c3e70b87de5 Amey Narkhede 2021-08-05 5243 } 310c3e70b87de5 Amey Narkhede 2021-08-05 5244 static DEVICE_ATTR_RW(reset_method); 310c3e70b87de5 Amey Narkhede 2021-08-05 5245 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected]
.config.gz
Description: application/gzip
_______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
