public inbox for kernel-janitors@vger.kernel.org
 help / color / mirror / Atom feed
* [patch] i915: return -EFAULT if copy_to_user fails
@ 2010-06-19 13:12 Dan Carpenter
  2010-06-23 17:03 ` Dan Carpenter
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Dan Carpenter @ 2010-06-19 13:12 UTC (permalink / raw)
  To: David Airlie; +Cc: kernel-janitors, dri-devel

copy_to_user returns the number of bytes remaining to be copied, but we
want to return a negative error code here.  These are returned to
userspace.

Signed-off-by: Dan Carpenter <error27@gmail.com>

diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index 59a2bf8..5fd876e 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -608,8 +608,10 @@ static int i915_batchbuffer(struct drm_device *dev, void *data,
 		ret = copy_from_user(cliprects, batch->cliprects,
 				     batch->num_cliprects *
 				     sizeof(struct drm_clip_rect));
-		if (ret != 0)
+		if (ret != 0) {
+			ret = -EFAULT;
 			goto fail_free;
+		}
 	}
 
 	mutex_lock(&dev->struct_mutex);
@@ -650,8 +652,10 @@ static int i915_cmdbuffer(struct drm_device *dev, void *data,
 		return -ENOMEM;
 
 	ret = copy_from_user(batch_data, cmdbuf->buf, cmdbuf->sz);
-	if (ret != 0)
+	if (ret != 0) {
+		ret = -EFAULT;
 		goto fail_batch_free;
+	}
 
 	if (cmdbuf->num_cliprects) {
 		cliprects = kcalloc(cmdbuf->num_cliprects,
@@ -664,8 +668,10 @@ static int i915_cmdbuffer(struct drm_device *dev, void *data,
 		ret = copy_from_user(cliprects, cmdbuf->cliprects,
 				     cmdbuf->num_cliprects *
 				     sizeof(struct drm_clip_rect));
-		if (ret != 0)
+		if (ret != 0) {
+			ret = -EFAULT;
 			goto fail_clip_free;
+		}
 	}
 
 	mutex_lock(&dev->struct_mutex);

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [patch] i915: return -EFAULT if copy_to_user fails
  2010-06-19 13:12 [patch] i915: return -EFAULT if copy_to_user fails Dan Carpenter
@ 2010-06-23 17:03 ` Dan Carpenter
  2010-08-23 11:24   ` Dan Carpenter
  2010-08-23 11:36   ` Chris Wilson
  2010-08-23 11:22 ` Dan Carpenter
  2010-08-23 11:37 ` Chris Wilson
  2 siblings, 2 replies; 6+ messages in thread
From: Dan Carpenter @ 2010-06-23 17:03 UTC (permalink / raw)
  To: David Airlie; +Cc: Daniel Vetter, kernel-janitors, dri-devel, Dave Airlie

copy_to_user() returns the number of bytes remaining to be copied and
I'm pretty sure we want to return a negative error code here.

Signed-off-by: Dan Carpenter <error27@gmail.com>

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 9ded3da..22691b4 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3707,6 +3707,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
 		if (ret != 0) {
 			DRM_ERROR("copy %d cliprects failed: %d\n",
 				  args->num_cliprects, ret);
+			ret = -EFAULT;
 			goto pre_mutex_err;
 		}
 	}

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [patch] i915: return -EFAULT if copy_to_user fails
  2010-06-19 13:12 [patch] i915: return -EFAULT if copy_to_user fails Dan Carpenter
  2010-06-23 17:03 ` Dan Carpenter
@ 2010-08-23 11:22 ` Dan Carpenter
  2010-08-23 11:37 ` Chris Wilson
  2 siblings, 0 replies; 6+ messages in thread
From: Dan Carpenter @ 2010-08-23 11:22 UTC (permalink / raw)
  To: David Airlie; +Cc: kernel-janitors, dri-devel

On Sat, Jun 19, 2010 at 03:12:51PM +0200, Dan Carpenter wrote:
> copy_to_user returns the number of bytes remaining to be copied, but we
> want to return a negative error code here.  These are returned to
> userspace.
> 

I didn't get a response on this patch.

regards,
dan carpenter

> Signed-off-by: Dan Carpenter <error27@gmail.com>
> 
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index 59a2bf8..5fd876e 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -608,8 +608,10 @@ static int i915_batchbuffer(struct drm_device *dev, void *data,
>  		ret = copy_from_user(cliprects, batch->cliprects,
>  				     batch->num_cliprects *
>  				     sizeof(struct drm_clip_rect));
> -		if (ret != 0)
> +		if (ret != 0) {
> +			ret = -EFAULT;
>  			goto fail_free;
> +		}
>  	}
>  
>  	mutex_lock(&dev->struct_mutex);
> @@ -650,8 +652,10 @@ static int i915_cmdbuffer(struct drm_device *dev, void *data,
>  		return -ENOMEM;
>  
>  	ret = copy_from_user(batch_data, cmdbuf->buf, cmdbuf->sz);
> -	if (ret != 0)
> +	if (ret != 0) {
> +		ret = -EFAULT;
>  		goto fail_batch_free;
> +	}
>  
>  	if (cmdbuf->num_cliprects) {
>  		cliprects = kcalloc(cmdbuf->num_cliprects,
> @@ -664,8 +668,10 @@ static int i915_cmdbuffer(struct drm_device *dev, void *data,
>  		ret = copy_from_user(cliprects, cmdbuf->cliprects,
>  				     cmdbuf->num_cliprects *
>  				     sizeof(struct drm_clip_rect));
> -		if (ret != 0)
> +		if (ret != 0) {
> +			ret = -EFAULT;
>  			goto fail_clip_free;
> +		}
>  	}
>  
>  	mutex_lock(&dev->struct_mutex);

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] i915: return -EFAULT if copy_to_user fails
  2010-06-23 17:03 ` Dan Carpenter
@ 2010-08-23 11:24   ` Dan Carpenter
  2010-08-23 11:36   ` Chris Wilson
  1 sibling, 0 replies; 6+ messages in thread
From: Dan Carpenter @ 2010-08-23 11:24 UTC (permalink / raw)
  To: David Airlie; +Cc: Daniel Vetter, kernel-janitors, dri-devel, Dave Airlie

On Wed, Jun 23, 2010 at 07:03:01PM +0200, Dan Carpenter wrote:
> copy_to_user() returns the number of bytes remaining to be copied and
> I'm pretty sure we want to return a negative error code here.
> 

This patch wasn't applied either.

regards,
dan carpenter


> Signed-off-by: Dan Carpenter <error27@gmail.com>
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index 9ded3da..22691b4 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -3707,6 +3707,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
>  		if (ret != 0) {
>  			DRM_ERROR("copy %d cliprects failed: %d\n",
>  				  args->num_cliprects, ret);
> +			ret = -EFAULT;
>  			goto pre_mutex_err;
>  		}
>  	}

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] i915: return -EFAULT if copy_to_user fails
  2010-06-23 17:03 ` Dan Carpenter
  2010-08-23 11:24   ` Dan Carpenter
@ 2010-08-23 11:36   ` Chris Wilson
  1 sibling, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2010-08-23 11:36 UTC (permalink / raw)
  To: Dan Carpenter, David Airlie
  Cc: Daniel Vetter, kernel-janitors, dri-devel, Dave Airlie

On Wed, 23 Jun 2010 19:03:01 +0200, Dan Carpenter <error27@gmail.com> wrote:
> copy_to_user() returns the number of bytes remaining to be copied and
> I'm pretty sure we want to return a negative error code here.
> 
> Signed-off-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

-- 
Chris Wilson, Intel Open Source Technology Centre

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] i915: return -EFAULT if copy_to_user fails
  2010-06-19 13:12 [patch] i915: return -EFAULT if copy_to_user fails Dan Carpenter
  2010-06-23 17:03 ` Dan Carpenter
  2010-08-23 11:22 ` Dan Carpenter
@ 2010-08-23 11:37 ` Chris Wilson
  2 siblings, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2010-08-23 11:37 UTC (permalink / raw)
  To: Dan Carpenter, David Airlie; +Cc: dri-devel, kernel-janitors

On Sat, 19 Jun 2010 15:12:51 +0200, Dan Carpenter <error27@gmail.com> wrote:
> copy_to_user returns the number of bytes remaining to be copied, but we
> want to return a negative error code here.  These are returned to
> userspace.
> 
> Signed-off-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

-- 
Chris Wilson, Intel Open Source Technology Centre

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-08-23 11:37 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-19 13:12 [patch] i915: return -EFAULT if copy_to_user fails Dan Carpenter
2010-06-23 17:03 ` Dan Carpenter
2010-08-23 11:24   ` Dan Carpenter
2010-08-23 11:36   ` Chris Wilson
2010-08-23 11:22 ` Dan Carpenter
2010-08-23 11:37 ` Chris Wilson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox