forked from Minki/linux
drm/i915: Rephrase pwrite bounds checking to avoid any potential overflow
... and do the same for pread. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: stable@kernel.org
This commit is contained in:
parent
ce9d419dbe
commit
7dcd2499de
@ -471,12 +471,8 @@ i915_gem_pread_ioctl(struct drm_device *dev, void *data,
|
||||
return -ENOENT;
|
||||
obj_priv = to_intel_bo(obj);
|
||||
|
||||
/* Bounds check source.
|
||||
*
|
||||
* XXX: This could use review for overflow issues...
|
||||
*/
|
||||
if (args->offset > obj->size || args->size > obj->size ||
|
||||
args->offset + args->size > obj->size) {
|
||||
/* Bounds check source. */
|
||||
if (args->offset > obj->size || args->size > obj->size - args->offset) {
|
||||
ret = -EINVAL;
|
||||
goto err;
|
||||
}
|
||||
@ -939,12 +935,8 @@ i915_gem_pwrite_ioctl(struct drm_device *dev, void *data,
|
||||
return -ENOENT;
|
||||
obj_priv = to_intel_bo(obj);
|
||||
|
||||
/* Bounds check destination.
|
||||
*
|
||||
* XXX: This could use review for overflow issues...
|
||||
*/
|
||||
if (args->offset > obj->size || args->size > obj->size ||
|
||||
args->offset + args->size > obj->size) {
|
||||
/* Bounds check destination. */
|
||||
if (args->offset > obj->size || args->size > obj->size - args->offset) {
|
||||
ret = -EINVAL;
|
||||
goto err;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user