drm/i915: Round l3 parity reads down
authorBen Widawsky <benjamin.widawsky@intel.com>
Fri, 13 Sep 2013 05:28:28 +0000 (22:28 -0700)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 13 Sep 2013 12:55:55 +0000 (14:55 +0200)
We always read a register for l3 parity reads, and we don't really want
to ever let userspace trick us into giving back less than the dword.

Writes are okay because we assume everything will be 0 filled, and as
such, if a user really wants to write less than a dword, let them.

Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_sysfs.c

index c8c4112..9070f50 100644 (file)
@@ -121,6 +121,8 @@ i915_l3_read(struct file *filp, struct kobject *kobj,
        uint32_t misccpctl;
        int i, ret;
 
+       count = round_down(count, 4);
+
        ret = l3_access_valid(drm_dev, offset);
        if (ret)
                return ret;