[PATCH 5/5] drm/i915: Add drm_panic support
kernel test robot
lkp at intel.com
Sat Nov 30 10:48:02 UTC 2024
Hi Jocelyn,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 44cff6c5b0b17a78bc0b30372bcd816cf6dd282a]
url: https://github.com/intel-lab-lkp/linux/commits/Jocelyn-Falempe/drm-i915-fbdev-Add-intel_fbdev_getvaddr/20241130-002536
base: 44cff6c5b0b17a78bc0b30372bcd816cf6dd282a
patch link: https://lore.kernel.org/r/20241129162232.7594-6-jfalempe%40redhat.com
patch subject: [PATCH 5/5] drm/i915: Add drm_panic support
config: i386-randconfig-061-20241130 (https://download.01.org/0day-ci/archive/20241130/202411302022.wlwTKMBh-lkp@intel.com/config)
compiler: clang version 19.1.3 (https://github.com/llvm/llvm-project ab51eccf88f5321e7c60591c5546b254b6afab99)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241130/202411302022.wlwTKMBh-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 at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202411302022.wlwTKMBh-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/i915/display/intel_atomic_plane.c:1273:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *vaddr_iomem @@ got void *[assigned] ptr @@
drivers/gpu/drm/i915/display/intel_atomic_plane.c:1273:55: sparse: expected void [noderef] __iomem *vaddr_iomem
drivers/gpu/drm/i915/display/intel_atomic_plane.c:1273:55: sparse: got void *[assigned] ptr
vim +1273 drivers/gpu/drm/i915/display/intel_atomic_plane.c
1228
1229 static int intel_get_scanout_buffer(struct drm_plane *plane,
1230 struct drm_scanout_buffer *sb)
1231 {
1232 struct intel_plane_state *plane_state;
1233 struct drm_gem_object *gem_obj;
1234 struct drm_i915_gem_object *obj;
1235 struct drm_framebuffer *fb;
1236 struct drm_i915_private *dev_priv = to_i915(plane->dev);
1237 void *ptr;
1238 enum i915_map_type has_type;
1239
1240 if (!plane->state || !plane->state->fb || !plane->state->visible)
1241 return -ENODEV;
1242
1243 plane_state = to_intel_plane_state(plane->state);
1244 fb = plane_state->hw.fb;
1245 gem_obj = intel_fb_bo(fb);
1246 if (!gem_obj)
1247 return -ENODEV;
1248
1249 obj = to_intel_bo(gem_obj);
1250
1251 if (to_intel_framebuffer(fb) == intel_fbdev_framebuffer(dev_priv->display.fbdev.fbdev)) {
1252 ptr = intel_fbdev_getvaddr(dev_priv->display.fbdev.fbdev);
1253 if (!ptr)
1254 return -ENOMEM;
1255 } else {
1256 /* can't disable tiling if DPT is in use */
1257 if (fb->modifier && HAS_DPT(dev_priv))
1258 return -EOPNOTSUPP;
1259
1260 /* Taken from i915_gem_object_pin_map() */
1261 ptr = page_unpack_bits(obj->mm.mapping, &has_type);
1262 if (!ptr) {
1263 if (i915_gem_object_has_struct_page(obj))
1264 ptr = i915_gem_object_map_page(obj, I915_MAP_WB);
1265 else
1266 ptr = i915_gem_object_map_pfn(obj, I915_MAP_WB);
1267 if (IS_ERR(ptr))
1268 return -ENOMEM;
1269 }
1270 }
1271
1272 if (i915_gem_object_has_iomem(obj))
> 1273 iosys_map_set_vaddr_iomem(&panic_map, ptr);
1274 else
1275 iosys_map_set_vaddr(&panic_map, ptr);
1276
1277 sb->map[0] = panic_map;
1278 sb->width = fb->width;
1279 sb->height = fb->height;
1280 sb->format = fb->format;
1281 sb->pitch[0] = fb->pitches[0];
1282
1283 return 0;
1284 }
1285
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the dri-devel
mailing list