[Intel-gfx] [drm-intel:for-linux-next 479/497] drivers/gpu/drm/i915/i915_gem_gtt.c:1086:26: sparse: Using plain integer as NULL pointer
Chris Wilson
chris at chris-wilson.co.uk
Fri Aug 7 03:21:03 PDT 2015
On Fri, Aug 07, 2015 at 10:21:34AM +0100, Michel Thierry wrote:
> On 8/6/2015 11:00 PM, Daniel Vetter wrote:
> >On Thu, Aug 6, 2015 at 10:17 PM, kbuild test robot
> ><fengguang.wu at intel.com> wrote:
> >> 1070 if (IS_ENABLED(CONFIG_X86_32))
> >> 1071 /* While we have a proliferation of size_t variables
> >> 1072 * we cannot represent the full ppgtt size on 32bit,
> >> 1073 * so limit it to the same size as the GGTT (currently
> >> 1074 * 2GiB).
> >> 1075 */
> >> 1076 ppgtt->base.total = to_i915(ppgtt->base.dev)->gtt.base.total;
> >> 1077 ppgtt->base.cleanup = gen8_ppgtt_cleanup;
> >> 1078 ppgtt->base.allocate_va_range = gen8_alloc_va_range;
> >> 1079 ppgtt->base.insert_entries = gen8_ppgtt_insert_entries;
> >> 1080 ppgtt->base.clear_range = gen8_ppgtt_clear_range;
> >> 1081 ppgtt->base.unbind_vma = ppgtt_unbind_vma;
> >> 1082 ppgtt->base.bind_vma = ppgtt_bind_vma;
> >> 1083
> >> 1084 ppgtt->switch_mm = gen8_mm_switch;
> >> 1085
> >>>1086 ret = __pdp_init(false, &ppgtt->pdp);
> >
> >So the first argument of pdp_init ist struct drm_device *dev and yes
> >the first thing it does is deref it.
> >
>
> *dev is used only for I915_PDPES_PER_PDP/USES_FULL_48BIT_PPGTT,
> which in this path is always false. I didn't expect kbuild to
> complain. I'll change it with the other modifications I'm about to
> send.
Wrong. dev is never deferenced even though it is passed around.
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 41c5e7c9c8ab..37283d5a8a4a 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2549,12 +2549,12 @@ struct drm_i915_cmd_table {
#define HAS_HW_CONTEXTS(dev) (INTEL_INFO(dev)->gen >= 6)
#define HAS_LOGICAL_RING_CONTEXTS(dev) (INTEL_INFO(dev)->gen >= 8)
-#define USES_PPGTT(dev) (i915.enable_ppgtt)
-#define USES_FULL_PPGTT(dev) (i915.enable_ppgtt >= 2)
+#define USES_PPGTT() (i915.enable_ppgtt)
+#define USES_FULL_PPGTT() (i915.enable_ppgtt >= 2)
#ifdef CONFIG_X86_64
-# define USES_FULL_48BIT_PPGTT(dev) (i915.enable_ppgtt == 3)
+# define USES_FULL_48BIT_PPGTT() (i915.enable_ppgtt == 3)
#else
-# define USES_FULL_48BIT_PPGTT(dev) false
+# define USES_FULL_48BIT_PPGTT() false
#endif
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list