All of lore.kernel.org
 help / color / mirror / Atom feed
From: Venki Pallipadi <venkatesh.pallipadi@intel.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: "npiggin@suse.de" <npiggin@suse.de>,
	"hugh@veritas.com" <hugh@veritas.com>,
	Ingo Molnar <mingo@elte.hu>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [RFC] remap_pfn_range: store vm_pgoff for all linear_over_vma_region mappings
Date: Thu, 23 Oct 2008 15:43:43 -0700	[thread overview]
Message-ID: <20081023224343.GA28072@linux-os.sc.intel.com> (raw)
In-Reply-To: <20081023220913.GA20300@linux-os.sc.intel.com>


[Sorry for the duplicate. Correctly sending to Andrew this time.]

On Thu, Oct 23, 2008 at 03:09:14PM -0700, Venki Pallipadi wrote:
> 
> While working on x86 PAT, we are having some hurdles with tracking
> remap_pfn_range() regions, as later we do not have any information to say
> whether that PFNMAP mapping is linear for the entire vma range or
> it is smaller granularity regions within the vma.
> 
> A simple solution to this is to use vm_pgoff as an indicator for
> linear mapping over the vma region. Currently, remap_pfn_range
> only sets vm_pgoff only for COW mappings. Below patch changes the
> logic and sets the vm_pgoff irrespective of COW.
> 
> From our understanding of the code, this should not break anyone.
> Just sending it as an RFC to get feedback on whether it is OK to do
> something like this or are there any corner cases that we may
> break or watch out for.
> 
> Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
> Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
> 
> ---
>  mm/memory.c |    7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> Index: linux-2.6/mm/memory.c
> ===================================================================
> --- linux-2.6.orig/mm/memory.c	2008-10-21 09:58:47.000000000 -0700
> +++ linux-2.6/mm/memory.c	2008-10-23 13:38:26.000000000 -0700
> @@ -1575,11 +1575,10 @@ int remap_pfn_range(struct vm_area_struc
>  	 * behaviour that some programs depend on. We mark the "original"
>  	 * un-COW'ed pages by matching them up with "vma->vm_pgoff".
>  	 */
> -	if (is_cow_mapping(vma->vm_flags)) {
> -		if (addr != vma->vm_start || end != vma->vm_end)
> -			return -EINVAL;
> +	if (addr == vma->vm_start && end == vma->vm_end)
>  		vma->vm_pgoff = pfn;
> -	}
> +	else if (is_cow_mapping(vma->vm_flags))
> +		return -EINVAL;
>  
>  	vma->vm_flags |= VM_IO | VM_RESERVED | VM_PFNMAP;
>  

  reply	other threads:[~2008-10-23 22:43 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-23 22:09 [RFC] remap_pfn_range: store vm_pgoff for all linear_over_vma_region mappings Venki Pallipadi
2008-10-23 22:43 ` Venki Pallipadi [this message]
2008-10-24  1:08 ` Nick Piggin
2008-10-24  4:13   ` Pallipadi, Venkatesh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20081023224343.GA28072@linux-os.sc.intel.com \
    --to=venkatesh.pallipadi@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=hugh@veritas.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=npiggin@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.