All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Mel Gorman <mgorman@suse.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	"H. Peter Anvin" <hpa@zytor.com>, Linux-X86 <x86@kernel.org>,
	Ingo Molnar <mingo@kernel.org>,
	Steven Noonan <steven@uplinklabs.net>,
	Rik van Riel <riel@redhat.com>,
	David Vrabel <david.vrabel@citrix.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Andrea Arcangeli <aarcange@redhat.com>,
	Dave Hansen <dave.hansen@intel.com>,
	Srikar Dronamraju <srikar@linux.vnet.ibm.com>,
	Linux-MM <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Pavel Emelyanov <xemul@parallels.com>
Subject: Re: [RFC PATCH 0/5] Use an alternative to _PAGE_PROTNONE for _PAGE_NUMA v2
Date: Tue, 8 Apr 2014 22:16:06 +0400	[thread overview]
Message-ID: <20140408181606.GL23983@moon> (raw)
In-Reply-To: <20140408173031.GS10526@twins.programming.kicks-ass.net>

On Tue, Apr 08, 2014 at 07:30:31PM +0200, Peter Zijlstra wrote:
> On Tue, Apr 08, 2014 at 05:46:52PM +0100, Mel Gorman wrote:
> > Someone will ask why automatic NUMA balancing hints do not use "real"
> > PROT_NONE but as it would need VMA information to do that on all
> > architectures it would mean that VMA-fixups would be required when marking
> > PTEs for NUMA hinting faults so would be expensive.
> 
> Like this:
> 
>   https://lkml.org/lkml/2012/11/13/431
> 
> That used the generic PROT_NONE infrastructure and compared, on fault,
> the page protection bits against the vma->vm_page_prot bits?
> 
> So the objection to that approach was the vma-> dereference in
> pte_numa() ?

Peter, I somehow missing, with this patch would it be possible to
get rid of ugly macros in 2 level pages like we have now? (I've
dropped off softdirty support for non x86-64 now [patches are
flying around]) but still there are a few remains which make
Linus unhappy.

static __always_inline pgoff_t pte_to_pgoff(pte_t pte)
{
	return (pgoff_t)
		(pte_bitop(pte.pte_low, PTE_FILE_SHIFT1, PTE_FILE_MASK1,  0)		    +
		 pte_bitop(pte.pte_low, PTE_FILE_SHIFT2, PTE_FILE_MASK2,  PTE_FILE_LSHIFT2) +
		 pte_bitop(pte.pte_low, PTE_FILE_SHIFT3,           -1UL,  PTE_FILE_LSHIFT3));
}

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Mel Gorman <mgorman@suse.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	"H. Peter Anvin" <hpa@zytor.com>, Linux-X86 <x86@kernel.org>,
	Ingo Molnar <mingo@kernel.org>,
	Steven Noonan <steven@uplinklabs.net>,
	Rik van Riel <riel@redhat.com>,
	David Vrabel <david.vrabel@citrix.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Andrea Arcangeli <aarcange@redhat.com>,
	Dave Hansen <dave.hansen@intel.com>,
	Srikar Dronamraju <srikar@linux.vnet.ibm.com>,
	Linux-MM <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Pavel Emelyanov <xemul@parallels.com>
Subject: Re: [RFC PATCH 0/5] Use an alternative to _PAGE_PROTNONE for _PAGE_NUMA v2
Date: Tue, 8 Apr 2014 22:16:06 +0400	[thread overview]
Message-ID: <20140408181606.GL23983@moon> (raw)
In-Reply-To: <20140408173031.GS10526@twins.programming.kicks-ass.net>

On Tue, Apr 08, 2014 at 07:30:31PM +0200, Peter Zijlstra wrote:
> On Tue, Apr 08, 2014 at 05:46:52PM +0100, Mel Gorman wrote:
> > Someone will ask why automatic NUMA balancing hints do not use "real"
> > PROT_NONE but as it would need VMA information to do that on all
> > architectures it would mean that VMA-fixups would be required when marking
> > PTEs for NUMA hinting faults so would be expensive.
> 
> Like this:
> 
>   https://lkml.org/lkml/2012/11/13/431
> 
> That used the generic PROT_NONE infrastructure and compared, on fault,
> the page protection bits against the vma->vm_page_prot bits?
> 
> So the objection to that approach was the vma-> dereference in
> pte_numa() ?

Peter, I somehow missing, with this patch would it be possible to
get rid of ugly macros in 2 level pages like we have now? (I've
dropped off softdirty support for non x86-64 now [patches are
flying around]) but still there are a few remains which make
Linus unhappy.

static __always_inline pgoff_t pte_to_pgoff(pte_t pte)
{
	return (pgoff_t)
		(pte_bitop(pte.pte_low, PTE_FILE_SHIFT1, PTE_FILE_MASK1,  0)		    +
		 pte_bitop(pte.pte_low, PTE_FILE_SHIFT2, PTE_FILE_MASK2,  PTE_FILE_LSHIFT2) +
		 pte_bitop(pte.pte_low, PTE_FILE_SHIFT3,           -1UL,  PTE_FILE_LSHIFT3));
}

  parent reply	other threads:[~2014-04-08 18:16 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-08 13:09 [RFC PATCH 0/5] Use an alternative to _PAGE_PROTNONE for _PAGE_NUMA v2 Mel Gorman
2014-04-08 13:09 ` Mel Gorman
2014-04-08 13:09 ` [PATCH 1/5] x86: Require x86-64 for automatic NUMA balancing Mel Gorman
2014-04-08 13:09   ` Mel Gorman
2014-04-08 13:09 ` [PATCH 2/5] x86: Define _PAGE_NUMA by reusing software bits on the PMD and PTE levels Mel Gorman
2014-04-08 13:09   ` Mel Gorman
2014-04-08 13:09 ` [PATCH 3/5] mm: Allow FOLL_NUMA on FOLL_FORCE Mel Gorman
2014-04-08 13:09   ` Mel Gorman
2014-04-08 13:09 ` [PATCH 4/5] mm: use paravirt friendly ops for NUMA hinting ptes Mel Gorman
2014-04-08 13:09   ` Mel Gorman
2014-04-08 17:21   ` David Vrabel
2014-04-08 17:21     ` David Vrabel
2014-04-15 10:27   ` David Vrabel
2014-04-15 10:27     ` David Vrabel
2014-04-15 14:44     ` Mel Gorman
2014-04-15 14:44       ` Mel Gorman
2014-04-08 13:09 ` [PATCH 5/5] x86: Allow Xen to enable NUMA_BALANCING Mel Gorman
2014-04-08 13:09   ` Mel Gorman
2014-04-08 14:40 ` [RFC PATCH 0/5] Use an alternative to _PAGE_PROTNONE for _PAGE_NUMA v2 H. Peter Anvin
2014-04-08 14:40   ` H. Peter Anvin
2014-04-08 15:22   ` Linus Torvalds
2014-04-08 15:22     ` Linus Torvalds
2014-04-08 16:04     ` H. Peter Anvin
2014-04-08 16:04       ` H. Peter Anvin
2014-04-08 16:12     ` Peter Zijlstra
2014-04-08 16:12       ` Peter Zijlstra
2014-04-08 16:46     ` Mel Gorman
2014-04-08 16:46       ` Mel Gorman
2014-04-08 17:01       ` Linus Torvalds
2014-04-08 17:01         ` Linus Torvalds
2014-04-08 18:51         ` Mel Gorman
2014-04-08 18:51           ` Mel Gorman
2014-04-08 18:55           ` Linus Torvalds
2014-04-08 18:55             ` Linus Torvalds
2014-04-08 19:06             ` Mel Gorman
2014-04-08 19:06               ` Mel Gorman
2014-04-08 19:08             ` Rik van Riel
2014-04-08 19:08               ` Rik van Riel
2014-04-08 17:03       ` Mel Gorman
2014-04-08 17:03         ` Mel Gorman
2014-04-08 17:30       ` Peter Zijlstra
2014-04-08 17:30         ` Peter Zijlstra
2014-04-08 17:41         ` Linus Torvalds
2014-04-08 17:41           ` Linus Torvalds
2014-04-08 18:16         ` Cyrill Gorcunov [this message]
2014-04-08 18:16           ` Cyrill Gorcunov
2014-04-09  6:21         ` Ingo Molnar
2014-04-09  6:21           ` Ingo Molnar
2014-04-09 23:34           ` H. Peter Anvin
2014-04-09 23:34             ` H. Peter Anvin
2014-04-10  0:12             ` Linus Torvalds
2014-04-10  0:12               ` Linus Torvalds

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=20140408181606.GL23983@moon \
    --to=gorcunov@gmail.com \
    --cc=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=dave.hansen@intel.com \
    --cc=david.vrabel@citrix.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@suse.de \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=riel@redhat.com \
    --cc=srikar@linux.vnet.ibm.com \
    --cc=steven@uplinklabs.net \
    --cc=torvalds@linux-foundation.org \
    --cc=x86@kernel.org \
    --cc=xemul@parallels.com \
    /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.