* drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'map'.
@ 2024-03-02 10:05 Dan Carpenter
2024-03-02 10:22 ` Dan Carpenter
0 siblings, 1 reply; 2+ messages in thread
From: Dan Carpenter @ 2024-03-02 10:05 UTC (permalink / raw)
To: oe-kbuild, Xi Pardee
Cc: lkp, oe-kbuild-all, linux-kernel, Hans de Goede, Rajvi Jingar,
Ilpo Järvinen
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 5ad3cb0ed525b80c7f66c32b49a68c1f3510bec9
commit: 2bcef4529222424559ac9b45948ee9d82c09d9b5 platform/x86:intel/pmc: Enable debugfs multiple PMC support
config: i386-randconfig-141-20240302 (https://download.01.org/0day-ci/archive/20240302/202403021544.6qtkaAly-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
| Closes: https://lore.kernel.org/r/202403021544.6qtkaAly-lkp@intel.com/
New smatch warnings:
drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'map'.
Old smatch warnings:
drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'pmc'.
vim +/map +500 drivers/platform/x86/intel/pmc/core.c
92f530edd7c955 drivers/platform/x86/intel/pmc/core.c Gayatri Kammela 2022-11-14 463 int pmc_core_send_ltr_ignore(struct pmc_dev *pmcdev, u32 value)
9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 464 {
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 465 struct pmc *pmc;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 466 const struct pmc_reg_map *map;
36974daf53888e drivers/platform/x86/intel_pmc_core.c David E. Box 2021-03-19 467 u32 reg;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 468 int pmc_index, ltr_index;
9592438886756c drivers/platform/x86/intel_pmc_core.c Andy Shevchenko 2019-12-18 469
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 470 ltr_index = value;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 471 /* For platforms with multiple pmcs, ltr index value given by user
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 472 * is based on the contiguous indexes from ltr_show output.
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 473 * pmc index and ltr index needs to be calculated from it.
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 474 */
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 475 for (pmc_index = 0; pmc_index < ARRAY_SIZE(pmcdev->pmcs) && ltr_index > 0; pmc_index++) {
ltr_index comes from the user via pmc_core_ltr_ignore_write() Assume
that it is zero.
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 476 pmc = pmcdev->pmcs[pmc_index];
9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 477
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 478 if (!pmc)
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 479 continue;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 480
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 481 map = pmc->map;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 482 if (ltr_index <= map->ltr_ignore_max)
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 483 break;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 484
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 485 /* Along with IP names, ltr_show map includes CURRENT_PLATFORM
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 486 * and AGGREGATED_SYSTEM values per PMC. Take these two index
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 487 * values into account in ltr_index calculation. Also, to start
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 488 * ltr index from zero for next pmc, subtract it by 1.
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 489 */
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 490 ltr_index = ltr_index - (map->ltr_ignore_max + 2) - 1;
9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 491 }
9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 492
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 493 if (pmc_index >= ARRAY_SIZE(pmcdev->pmcs) || ltr_index < 0)
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 494 return -EINVAL;
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 495
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 496 pr_debug("ltr_ignore for pmc%d: ltr_index:%d\n", pmc_index, ltr_index);
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 497
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 498 mutex_lock(&pmcdev->lock);
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 499
1c709ae12dad6f drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 @500 reg = pmc_core_reg_read(pmc, map->ltr_ignore_offset);
^^^^^^^^^^^^^^^^^^^^^^
map is uninitialized.
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 501 reg |= BIT(ltr_index);
1c709ae12dad6f drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 502 pmc_core_reg_write(pmc, map->ltr_ignore_offset, reg);
9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 503
9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 504 mutex_unlock(&pmcdev->lock);
36974daf53888e drivers/platform/x86/intel_pmc_core.c David E. Box 2021-03-19 505
2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 506 return 0;
36974daf53888e drivers/platform/x86/intel_pmc_core.c David E. Box 2021-03-19 507 }
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'map'.
2024-03-02 10:05 drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'map' Dan Carpenter
@ 2024-03-02 10:22 ` Dan Carpenter
0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2024-03-02 10:22 UTC (permalink / raw)
To: oe-kbuild, Xi Pardee
Cc: lkp, oe-kbuild-all, linux-kernel, Hans de Goede, Rajvi Jingar,
Ilpo Järvinen
On Sat, Mar 02, 2024 at 01:05:45PM +0300, Dan Carpenter wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 5ad3cb0ed525b80c7f66c32b49a68c1f3510bec9
> commit: 2bcef4529222424559ac9b45948ee9d82c09d9b5 platform/x86:intel/pmc: Enable debugfs multiple PMC support
> config: i386-randconfig-141-20240302 (https://download.01.org/0day-ci/archive/20240302/202403021544.6qtkaAly-lkp@intel.com/config)
> compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
> | Closes: https://lore.kernel.org/r/202403021544.6qtkaAly-lkp@intel.com/
>
> New smatch warnings:
> drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'map'.
>
> Old smatch warnings:
> drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'pmc'.
>
> vim +/map +500 drivers/platform/x86/intel/pmc/core.c
>
> 92f530edd7c955 drivers/platform/x86/intel/pmc/core.c Gayatri Kammela 2022-11-14 463 int pmc_core_send_ltr_ignore(struct pmc_dev *pmcdev, u32 value)
> 9c2ee19987ef02 drivers/platform/x86/intel_pmc_core.c Rajneesh Bhardwaj 2016-10-07 464 {
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 465 struct pmc *pmc;
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 466 const struct pmc_reg_map *map;
> 36974daf53888e drivers/platform/x86/intel_pmc_core.c David E. Box 2021-03-19 467 u32 reg;
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 468 int pmc_index, ltr_index;
> 9592438886756c drivers/platform/x86/intel_pmc_core.c Andy Shevchenko 2019-12-18 469
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 470 ltr_index = value;
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 471 /* For platforms with multiple pmcs, ltr index value given by user
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 472 * is based on the contiguous indexes from ltr_show output.
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 473 * pmc index and ltr index needs to be calculated from it.
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 474 */
> 2bcef452922242 drivers/platform/x86/intel/pmc/core.c Xi Pardee 2023-06-13 475 for (pmc_index = 0; pmc_index < ARRAY_SIZE(pmcdev->pmcs) && ltr_index > 0; pmc_index++) {
>
>
> ltr_index comes from the user via pmc_core_ltr_ignore_write() Assume
> that it is zero.
Never mind. This was fixed in fbcf67ce5a9e ("platform/x86/intel/pmc:
Fix hang in pmc_core_send_ltr_ignore()").
regards,
dan carpenter
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-03-02 10:22 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-02 10:05 drivers/platform/x86/intel/pmc/core.c:500 pmc_core_send_ltr_ignore() error: uninitialized symbol 'map' Dan Carpenter
2024-03-02 10:22 ` Dan Carpenter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®