From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com, Dan Carpenter <error27@gmail.com>
Subject: drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c:126 isp_genpd_add_device() warn: can 'pdev' even be NULL?
Date: Thu, 23 Jul 2026 10:35:40 +0800 [thread overview]
Message-ID: <202607230826.6uHwoUpw-lkp@intel.com> (raw)
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Pratap Nirujogi <pratap.nirujogi@amd.com>
CC: Alex Deucher <alexander.deucher@amd.com>
CC: Bin Du <bin.du@amd.com>
CC: Mario Limonciello <mario.limonciello@amd.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 248951ddc14de84de3910f9b13f51491a8cd91df
commit: fd14786071021bb63b0ab32b95257a594e46f8d4 drm/amd/amdgpu: Add ISP Generic PM Domain (genpd) support
date: 1 year, 1 month ago
:::::: branch date: 33 hours ago
:::::: commit date: 1 year, 1 month ago
config: riscv-randconfig-r073-20260722 (https://download.01.org/0day-ci/archive/20260723/202607230826.6uHwoUpw-lkp@intel.com/config)
compiler: riscv64-linux-gcc (GCC) 11.5.0
smatch: v0.5.0-9187-g5189e3fb
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
| Fixes: fd1478607102 ("drm/amd/amdgpu: Add ISP Generic PM Domain (genpd) support")
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202607230826.6uHwoUpw-lkp@intel.com/
smatch warnings:
drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c:126 isp_genpd_add_device() warn: can 'pdev' even be NULL?
drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c:159 isp_genpd_remove_device() warn: can 'pdev' even be NULL?
vim +/pdev +126 drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c
fd14786071021b Pratap Nirujogi 2025-05-29 117
fd14786071021b Pratap Nirujogi 2025-05-29 118 static int isp_genpd_add_device(struct device *dev, void *data)
fd14786071021b Pratap Nirujogi 2025-05-29 119 {
fd14786071021b Pratap Nirujogi 2025-05-29 120 struct generic_pm_domain *gpd = data;
fd14786071021b Pratap Nirujogi 2025-05-29 121 struct platform_device *pdev = container_of(dev, struct platform_device, dev);
fd14786071021b Pratap Nirujogi 2025-05-29 122 struct amdgpu_isp *isp = container_of(gpd, struct amdgpu_isp, ispgpd);
fd14786071021b Pratap Nirujogi 2025-05-29 123 struct amdgpu_device *adev = isp->adev;
fd14786071021b Pratap Nirujogi 2025-05-29 124 int ret;
fd14786071021b Pratap Nirujogi 2025-05-29 125
fd14786071021b Pratap Nirujogi 2025-05-29 @126 if (!pdev)
fd14786071021b Pratap Nirujogi 2025-05-29 127 return -EINVAL;
fd14786071021b Pratap Nirujogi 2025-05-29 128
fd14786071021b Pratap Nirujogi 2025-05-29 129 if (!dev->type->name) {
fd14786071021b Pratap Nirujogi 2025-05-29 130 drm_dbg(&adev->ddev, "Invalid device type to add\n");
fd14786071021b Pratap Nirujogi 2025-05-29 131 goto exit;
fd14786071021b Pratap Nirujogi 2025-05-29 132 }
fd14786071021b Pratap Nirujogi 2025-05-29 133
fd14786071021b Pratap Nirujogi 2025-05-29 134 if (strcmp(dev->type->name, "mfd_device")) {
fd14786071021b Pratap Nirujogi 2025-05-29 135 drm_dbg(&adev->ddev, "Invalid isp mfd device %s to add\n", pdev->mfd_cell->name);
fd14786071021b Pratap Nirujogi 2025-05-29 136 goto exit;
fd14786071021b Pratap Nirujogi 2025-05-29 137 }
fd14786071021b Pratap Nirujogi 2025-05-29 138
fd14786071021b Pratap Nirujogi 2025-05-29 139 ret = pm_genpd_add_device(gpd, dev);
fd14786071021b Pratap Nirujogi 2025-05-29 140 if (ret) {
fd14786071021b Pratap Nirujogi 2025-05-29 141 drm_err(&adev->ddev, "Failed to add dev %s to genpd %d\n",
fd14786071021b Pratap Nirujogi 2025-05-29 142 pdev->mfd_cell->name, ret);
fd14786071021b Pratap Nirujogi 2025-05-29 143 return -ENODEV;
fd14786071021b Pratap Nirujogi 2025-05-29 144 }
fd14786071021b Pratap Nirujogi 2025-05-29 145
fd14786071021b Pratap Nirujogi 2025-05-29 146 exit:
fd14786071021b Pratap Nirujogi 2025-05-29 147 /* Continue to add */
fd14786071021b Pratap Nirujogi 2025-05-29 148 return 0;
fd14786071021b Pratap Nirujogi 2025-05-29 149 }
fd14786071021b Pratap Nirujogi 2025-05-29 150
fd14786071021b Pratap Nirujogi 2025-05-29 151 static int isp_genpd_remove_device(struct device *dev, void *data)
fd14786071021b Pratap Nirujogi 2025-05-29 152 {
fd14786071021b Pratap Nirujogi 2025-05-29 153 struct generic_pm_domain *gpd = data;
fd14786071021b Pratap Nirujogi 2025-05-29 154 struct platform_device *pdev = container_of(dev, struct platform_device, dev);
fd14786071021b Pratap Nirujogi 2025-05-29 155 struct amdgpu_isp *isp = container_of(gpd, struct amdgpu_isp, ispgpd);
fd14786071021b Pratap Nirujogi 2025-05-29 156 struct amdgpu_device *adev = isp->adev;
fd14786071021b Pratap Nirujogi 2025-05-29 157 int ret;
fd14786071021b Pratap Nirujogi 2025-05-29 158
fd14786071021b Pratap Nirujogi 2025-05-29 @159 if (!pdev)
fd14786071021b Pratap Nirujogi 2025-05-29 160 return -EINVAL;
fd14786071021b Pratap Nirujogi 2025-05-29 161
fd14786071021b Pratap Nirujogi 2025-05-29 162 if (!dev->type->name) {
fd14786071021b Pratap Nirujogi 2025-05-29 163 drm_dbg(&adev->ddev, "Invalid device type to remove\n");
fd14786071021b Pratap Nirujogi 2025-05-29 164 goto exit;
fd14786071021b Pratap Nirujogi 2025-05-29 165 }
fd14786071021b Pratap Nirujogi 2025-05-29 166
fd14786071021b Pratap Nirujogi 2025-05-29 167 if (strcmp(dev->type->name, "mfd_device")) {
fd14786071021b Pratap Nirujogi 2025-05-29 168 drm_dbg(&adev->ddev, "Invalid isp mfd device %s to remove\n",
fd14786071021b Pratap Nirujogi 2025-05-29 169 pdev->mfd_cell->name);
fd14786071021b Pratap Nirujogi 2025-05-29 170 goto exit;
fd14786071021b Pratap Nirujogi 2025-05-29 171 }
fd14786071021b Pratap Nirujogi 2025-05-29 172
fd14786071021b Pratap Nirujogi 2025-05-29 173 ret = pm_genpd_remove_device(dev);
fd14786071021b Pratap Nirujogi 2025-05-29 174 if (ret) {
fd14786071021b Pratap Nirujogi 2025-05-29 175 drm_err(&adev->ddev, "Failed to remove dev from genpd %d\n", ret);
fd14786071021b Pratap Nirujogi 2025-05-29 176 return -ENODEV;
fd14786071021b Pratap Nirujogi 2025-05-29 177 }
fd14786071021b Pratap Nirujogi 2025-05-29 178
fd14786071021b Pratap Nirujogi 2025-05-29 179 exit:
fd14786071021b Pratap Nirujogi 2025-05-29 180 /* Continue to remove */
fd14786071021b Pratap Nirujogi 2025-05-29 181 return 0;
fd14786071021b Pratap Nirujogi 2025-05-29 182 }
fd14786071021b Pratap Nirujogi 2025-05-29 183
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2026-07-23 2:36 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-23 2:35 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-04-03 8:39 drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c:126 isp_genpd_add_device() warn: can 'pdev' even be NULL? kernel test robot
2025-12-19 22:38 kernel test robot
2025-08-04 6:45 Dan Carpenter
2025-08-02 9:15 kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202607230826.6uHwoUpw-lkp@intel.com \
--to=lkp@intel.com \
--cc=error27@gmail.com \
--cc=oe-kbuild@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.