i915: snprintf returns large values
authorDan Carpenter <error27@gmail.com>
Wed, 8 Sep 2010 19:44:47 +0000 (21:44 +0200)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 8 Sep 2010 20:20:22 +0000 (21:20 +0100)
snprintf() returns the number of bytes which would have been used if
there was enough space.  It can be larger than the size of the buffer.
Obviously in this case the buffer is large enough but everyone just
copy and pastes this code so it's better to limit it and set a good
example.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
drivers/gpu/drm/i915/i915_debugfs.c

index 2f3e017d24d66ac1d38ac3de4a424884abdeca69..7700ccf25784a2039aaa9c9b64e09418a6a9e731 100644 (file)
@@ -886,6 +886,9 @@ i915_wedged_read(struct file *filp,
                       "wedged :  %d\n",
                       atomic_read(&dev_priv->mm.wedged));
 
+       if (len > sizeof (buf))
+               len = sizeof (buf);
+
        return simple_read_from_buffer(ubuf, max, ppos, buf, len);
 }