public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] uio: fix finding mm index for vma
@ 2011-03-27  7:58 Hillf Danton
  2011-03-28 21:33 ` Hans J. Koch
  0 siblings, 1 reply; 2+ messages in thread
From: Hillf Danton @ 2011-03-27  7:58 UTC (permalink / raw)
  To: linux-kernel

When finding mm index for vma it looks more flexible that the mm could
be sparse, and
both the size of mm and the pgoff of vma could give correct selection.

Signed-off-by: Hillf Danton <dhillf@gmail.com>
---

--- a/drivers/uio/uio.c	2011-01-05 08:50:20.000000000 +0800
+++ b/drivers/uio/uio.c	2011-03-27 14:33:02.000000000 +0800
@@ -587,14 +587,12 @@ static ssize_t uio_write(struct file *fi

 static int uio_find_mem_index(struct vm_area_struct *vma)
 {
-	int mi;
 	struct uio_device *idev = vma->vm_private_data;

-	for (mi = 0; mi < MAX_UIO_MAPS; mi++) {
-		if (idev->info->mem[mi].size == 0)
+	if (vma->vm_pgoff < MAX_UIO_MAPS) {
+		if (idev->info->mem[vma->vm_pgoff].size == 0)
 			return -1;
-		if (vma->vm_pgoff == mi)
-			return mi;
+		return (int)vma->vm_pgoff;
 	}
 	return -1;
 }

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

* Re: [PATCH] uio: fix finding mm index for vma
  2011-03-27  7:58 [PATCH] uio: fix finding mm index for vma Hillf Danton
@ 2011-03-28 21:33 ` Hans J. Koch
  0 siblings, 0 replies; 2+ messages in thread
From: Hans J. Koch @ 2011-03-28 21:33 UTC (permalink / raw)
  To: Hillf Danton; +Cc: linux-kernel, Greg KH

On Sun, Mar 27, 2011 at 03:58:19PM +0800, Hillf Danton wrote:

(Added Greg KH to Cc:)

Please Cc: Greg and me when posting patches for UIO.

> When finding mm index for vma it looks more flexible that the mm could
> be sparse, and
> both the size of mm and the pgoff of vma could give correct selection.

Nice improvement!

Thanks for your contribution,
Hans

> 
> Signed-off-by: Hillf Danton <dhillf@gmail.com>

Signed-off-by: Hans J. Koch <hjk@hansjkoch.de>

> ---
> 
> --- a/drivers/uio/uio.c	2011-01-05 08:50:20.000000000 +0800
> +++ b/drivers/uio/uio.c	2011-03-27 14:33:02.000000000 +0800
> @@ -587,14 +587,12 @@ static ssize_t uio_write(struct file *fi
> 
>  static int uio_find_mem_index(struct vm_area_struct *vma)
>  {
> -	int mi;
>  	struct uio_device *idev = vma->vm_private_data;
> 
> -	for (mi = 0; mi < MAX_UIO_MAPS; mi++) {
> -		if (idev->info->mem[mi].size == 0)
> +	if (vma->vm_pgoff < MAX_UIO_MAPS) {
> +		if (idev->info->mem[vma->vm_pgoff].size == 0)
>  			return -1;
> -		if (vma->vm_pgoff == mi)
> -			return mi;
> +		return (int)vma->vm_pgoff;
>  	}
>  	return -1;
>  }
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 

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

end of thread, other threads:[~2011-03-28 21:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-27  7:58 [PATCH] uio: fix finding mm index for vma Hillf Danton
2011-03-28 21:33 ` Hans J. Koch

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