drm/i915/gvt: Do not use I915_NUM_ENGINES to iterate over the mocs regs array
authorMichel Thierry <michel.thierry@intel.com>
Mon, 8 Jan 2018 18:37:34 +0000 (10:37 -0800)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 1 Feb 2018 15:31:07 +0000 (07:31 -0800)
The mocs reg array is defined locally but then we iterate over its
elements using I915_NUM_ENGINES. There is no 'hard' connection between
I915_NUM_ENGINES and the regs array and there will be problems if either
of them increases.

Use the size of the mocs reg array instead to safely iterate over it.

Signed-off-by: Michel Thierry <michel.thierry@intel.com>
Cc: Weinan Li <weinan.z.li@intel.com>
Cc: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/gvt/mmio_context.c

index 48ee61a..73ad6e9 100644 (file)
@@ -167,7 +167,7 @@ static void load_render_mocs(struct drm_i915_private *dev_priv)
        };
        int ring_id, i;
 
-       for (ring_id = 0; ring_id < I915_NUM_ENGINES; ring_id++) {
+       for (ring_id = 0; ring_id < ARRAY_SIZE(regs); ring_id++) {
                offset.reg = regs[ring_id];
                for (i = 0; i < 64; i++) {
                        gen9_render_mocs.control_table[ring_id][i] =