* Re: [PATCH v2] drm/amdgpu/discovery: validate table offset before IP discovery header cast
[not found] <20260708061835.111986-1-jhapavitra98@gmail.com>
@ 2026-08-12 20:46 ` kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-12 20:46 UTC (permalink / raw)
To: Pavitra Jha, alexander.deucher, christian.koenig, airlied, simona
Cc: llvm, oe-kbuild-all, amd-gfx, dri-devel, linux-kernel, stable,
Pavitra Jha
Hi Pavitra,
kernel test robot noticed the following build errors:
[auto build test ERROR on drm-misc/drm-misc-next]
[also build test ERROR on linus/master v7.2-rc7 next-20260811]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Pavitra-Jha/drm-amdgpu-discovery-validate-table-offset-before-IP-discovery-header-cast/20260812-100224
base: https://gitlab.freedesktop.org/drm/misc/kernel.git drm-misc-next
patch link: https://lore.kernel.org/r/20260708061835.111986-1-jhapavitra98%40gmail.com
patch subject: [PATCH v2] drm/amdgpu/discovery: validate table offset before IP discovery header cast
config: loongarch-defconfig (https://download.01.org/0day-ci/archive/20260813/202608130435.5Msck82Q-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 12df34b8469b8095359de8c249cb1b2753fadeea)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260813/202608130435.5Msck82Q-lkp@intel.com/reproduce)
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>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608130435.5Msck82Q-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:534:25: error: member reference type 'struct table_info' is not a pointer; did you mean to use '.'?
534 | if (le16_to_cpu((*info)->offset) >= adev->discovery.size) {
| ~~~~~~~^~
| .
include/linux/byteorder/generic.h:91:21: note: expanded from macro 'le16_to_cpu'
91 | #define le16_to_cpu __le16_to_cpu
| ^
include/uapi/linux/byteorder/little_endian.h:37:51: note: expanded from macro '__le16_to_cpu'
37 | #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
| ^
drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:536:23: error: member reference type 'struct table_info' is not a pointer; did you mean to use '.'?
536 | le16_to_cpu((*info)->offset), table_id);
| ~~~~~~~^~
| .
include/linux/dev_printk.h:154:65: note: expanded from macro 'dev_err'
154 | dev_printk_index_wrap(_dev_err, KERN_ERR, dev, dev_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~~~
include/linux/dev_printk.h:110:23: note: expanded from macro 'dev_printk_index_wrap'
110 | _p_func(dev, fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/uapi/linux/byteorder/little_endian.h:37:51: note: expanded from macro '__le16_to_cpu'
37 | #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
| ^
>> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:536:34: error: use of undeclared identifier 'table_id'
536 | le16_to_cpu((*info)->offset), table_id);
| ^~~~~~~~
3 errors generated.
vim +534 drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
508
509 static int amdgpu_discovery_verify_npsinfo(struct amdgpu_device *adev,
510 struct table_info *info)
511 {
512 uint8_t *discovery_bin = adev->discovery.bin;
513 uint16_t checksum;
514 uint16_t offset;
515
516 offset = le16_to_cpu(info->offset);
517 checksum = le16_to_cpu(info->checksum);
518
519 struct nps_info_header *nhdr =
520 (struct nps_info_header *)(discovery_bin + offset);
521
522 if (le32_to_cpu(nhdr->table_id) != NPS_INFO_TABLE_ID) {
523 dev_dbg(adev->dev, "invalid ip discovery nps info table id\n");
524 return -EINVAL;
525 }
526
527 if (!amdgpu_discovery_verify_checksum(adev, discovery_bin + offset,
528 le32_to_cpu(nhdr->size_bytes),
529 checksum)) {
530 dev_dbg(adev->dev, "invalid nps info data table checksum\n");
531 return -EINVAL;
532 }
533
> 534 if (le16_to_cpu((*info)->offset) >= adev->discovery.size) {
535 dev_err(adev->dev, "invalid table offset %u for table_id %u\n",
> 536 le16_to_cpu((*info)->offset), table_id);
537 return -EINVAL;
538 }
539
540 return 0;
541 }
542
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-12 20:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20260708061835.111986-1-jhapavitra98@gmail.com>
2026-08-12 20:46 ` [PATCH v2] drm/amdgpu/discovery: validate table offset before IP discovery header cast kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox