public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrea Arcangeli <andrea@qumranet.com>
To: Christoph Lameter <clameter@sgi.com>
Cc: Robin Holt <holt@sgi.com>, Avi Kivity <avi@qumranet.com>,
	Izik Eidus <izike@qumranet.com>,
	kvm-devel@lists.sourceforge.net,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	steiner@sgi.com, linux-kernel@vger.kernel.org,
	linux-mm@kvack.org, daniel.blueman@quadrics.com
Subject: Re: [PATCH] mmu notifiers #v5
Date: Tue, 5 Feb 2008 06:25:25 +0100	[thread overview]
Message-ID: <20080205052525.GD7441@v2.random> (raw)
In-Reply-To: <Pine.LNX.4.64.0802041106370.9656@schroedinger.engr.sgi.com>

On Mon, Feb 04, 2008 at 11:09:01AM -0800, Christoph Lameter wrote:
> On Sun, 3 Feb 2008, Andrea Arcangeli wrote:
> 
> > > Right but that pin requires taking a refcount which we cannot do.
> > 
> > GRU can use my patch without the pin. XPMEM obviously can't use my
> > patch as my invalidate_page[s] are under the PT lock (a feature to fit
> > GRU/KVM in the simplest way), this is why an incremental patch adding
> > invalidate_range_start/end would be required to support XPMEM too.
> 
> Doesnt the kernel in some situations release the page before releasing the 
> pte lock? Then there will be an external pte pointing to a page that may 
> now have a different use. Its really bad if that pte does allow writes.

Sure the kernel does that most of the time, which is for example why I
had to use invalidate_page instead of invalidate_pages inside
zap_pte_range. Zero problems with that (this is also the exact reason
why I mentioned the tlb flushing code would need changes to convert
some page in pages).

  reply	other threads:[~2008-02-05  5:25 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-31  4:57 [patch 0/3] [RFC] MMU Notifiers V4 Christoph Lameter
2008-01-31  4:57 ` [patch 1/3] mmu_notifier: Core code Christoph Lameter
     [not found]   ` <20080131045812.553249048-sJ/iWh9BUns@public.gmane.org>
2008-02-01  1:56     ` Jack Steiner
     [not found]       ` <20080201015611.GA15893-sJ/iWh9BUns@public.gmane.org>
2008-02-01  2:24         ` Robin Holt
     [not found]           ` <20080201022444.GA26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  2:37             ` Jack Steiner
     [not found]               ` <20080201023659.GA30057-sJ/iWh9BUns@public.gmane.org>
2008-02-01  2:39                 ` Christoph Lameter
2008-02-01  2:31     ` Robin Holt
     [not found]       ` <20080201023113.GB26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  2:39         ` Christoph Lameter
     [not found]           ` <Pine.LNX.4.64.0801311838070.26594-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01  2:47             ` Robin Holt
     [not found]               ` <20080201024742.GD26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  3:01                 ` Christoph Lameter
2008-02-01  3:01             ` Jack Steiner
     [not found]               ` <20080201030104.GA29417-sJ/iWh9BUns@public.gmane.org>
2008-02-01  3:03                 ` Christoph Lameter
2008-02-01  3:52     ` Robin Holt
     [not found]       ` <20080201035249.GE26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  3:58         ` Christoph Lameter
     [not found]           ` <Pine.LNX.4.64.0801311957250.17649-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01  4:15             ` Robin Holt
2008-02-03  1:33             ` Andrea Arcangeli
     [not found]               ` <20080203013323.GA7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-04 19:13                 ` Christoph Lameter
2008-01-31  4:57 ` [patch 2/3] mmu_notifier: Callbacks to invalidate address ranges Christoph Lameter
     [not found]   ` <20080131045812.785269387-sJ/iWh9BUns@public.gmane.org>
2008-01-31 12:31     ` Andrea Arcangeli
     [not found]       ` <20080131123118.GK7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-01-31 20:07         ` Christoph Lameter
2008-01-31 22:01         ` mmu_notifier: close hole in fork Christoph Lameter
     [not found]           ` <Pine.LNX.4.64.0801311355260.27804-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-01-31 22:16             ` mmu_notifier: reduce size of mm_struct if !CONFIG_MMU_NOTIFIER Christoph Lameter
2008-01-31 22:21             ` mmu_notifier: Move mmu_notifier_release up to get rid of the invalidat_all() callback Christoph Lameter
     [not found]               ` <Pine.LNX.4.64.0801311421110.22290-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01  0:13                 ` Andrea Arcangeli
     [not found]                   ` <20080201001355.GU7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-01  1:52                     ` Christoph Lameter
2008-02-01  1:57                     ` mmu_notifier: invalidate_range for move_page_tables Christoph Lameter
     [not found]                       ` <Pine.LNX.4.64.0801311752200.24427-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01  2:38                         ` Robin Holt
     [not found]                           ` <20080201023815.GC26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  2:41                             ` Christoph Lameter
2008-02-01  0:01             ` mmu_notifier: close hole in fork Andrea Arcangeli
     [not found]               ` <20080201000158.GT7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-01  1:48                 ` Christoph Lameter
2008-02-01  4:24     ` [patch 2/3] mmu_notifier: Callbacks to invalidate address ranges Robin Holt
     [not found]       ` <20080201042408.GG26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  4:43         ` Christoph Lameter
     [not found]           ` <Pine.LNX.4.64.0801312042500.20675-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01 10:32             ` Robin Holt
2008-02-01 10:37               ` Robin Holt
     [not found]               ` <20080201103221.GH26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01 19:13                 ` Christoph Lameter
2008-01-31  4:57 ` [patch 3/3] mmu_notifier: invalidate_page callbacks Christoph Lameter
     [not found] ` <20080131045750.855008281-sJ/iWh9BUns@public.gmane.org>
2008-01-31 17:18   ` [PATCH] mmu notifiers #v5 Andrea Arcangeli
     [not found]     ` <20080131171806.GN7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-01-31 20:18       ` Christoph Lameter
2008-01-31 23:09         ` Christoph Lameter
     [not found]           ` <Pine.LNX.4.64.0801311508080.23624-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-01-31 23:41             ` Andrea Arcangeli
     [not found]               ` <20080131234101.GS7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-01  1:44                 ` Christoph Lameter
     [not found]                   ` <Pine.LNX.4.64.0801311738570.24297-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01 12:09                     ` Andrea Arcangeli
     [not found]                       ` <20080201120955.GX7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-01 19:23                         ` Christoph Lameter
     [not found]                           ` <Pine.LNX.4.64.0802011118060.18163-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-03  2:17                             ` Andrea Arcangeli
     [not found]                               ` <20080203021704.GC7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-03  3:14                                 ` Jack Steiner
     [not found]                                   ` <20080203031457.GA16127-sJ/iWh9BUns@public.gmane.org>
2008-02-03  3:33                                     ` Andrea Arcangeli
2008-02-04 19:09                                 ` Christoph Lameter
2008-02-05  5:25                                   ` Andrea Arcangeli [this message]
     [not found]                                     ` <20080205052525.GD7441-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-05  6:11                                       ` Christoph Lameter
     [not found]                                         ` <Pine.LNX.4.64.0802042206200.6739-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-05 18:08                                           ` Andrea Arcangeli
     [not found]                                             ` <20080205180802.GE7441-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-05 18:17                                               ` Christoph Lameter
     [not found]                                                 ` <Pine.LNX.4.64.0802051013440.11705-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-05 20:55                                                   ` Andrea Arcangeli
     [not found]                                                     ` <20080205205519.GF7441-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-05 22:06                                                       ` Christoph Lameter
     [not found]                                                         ` <Pine.LNX.4.64.0802051400200.14665-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-05 22:12                                                           ` Robin Holt
2008-02-05 22:26                                                           ` Andrea Arcangeli
     [not found]                                                             ` <20080205222657.GG7441-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-05 23:10                                                               ` Christoph Lameter
     [not found]                                                                 ` <Pine.LNX.4.64.0802051504450.16261-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-05 23:47                                                                   ` Andrea Arcangeli
     [not found]                                                                     ` <20080205234742.GI7441-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-06  0:04                                                                       ` Christoph Lameter
2008-01-31 23:28         ` Andrea Arcangeli
     [not found]           ` <20080131232842.GQ7185-lysg2Xt5kKMAvxtiuMwx3w@public.gmane.org>
2008-02-01  1:37             ` Christoph Lameter
     [not found]               ` <Pine.LNX.4.64.0801311733140.24297-RYO/mD75kfhx2SFC9UQUAuF7EQX82lMiAL8bYrjMMd8@public.gmane.org>
2008-02-01  2:23                 ` Robin Holt
     [not found]                   ` <20080201022321.GZ26420-sJ/iWh9BUns@public.gmane.org>
2008-02-01  2:26                     ` Christoph Lameter
2008-02-01 12:00                 ` Andrea Arcangeli

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=20080205052525.GD7441@v2.random \
    --to=andrea@qumranet.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=avi@qumranet.com \
    --cc=clameter@sgi.com \
    --cc=daniel.blueman@quadrics.com \
    --cc=holt@sgi.com \
    --cc=izike@qumranet.com \
    --cc=kvm-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=steiner@sgi.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox