From: Gerd Hoffmann <kraxel@redhat.com>
To: Robin Holt <holt@sgi.com>
Cc: Christoph Lameter <clameter@sgi.com>,
Andrea Arcangeli <andrea@qumranet.com>,
Andrew Morton <akpm@osdl.org>, Nick Piggin <npiggin@suse.de>,
linux-mm@kvack.org,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
steiner@sgi.com, linux-kernel@vger.kernel.org,
Avi Kivity <avi@qumranet.com>,
kvm-devel@lists.sourceforge.net, daniel.blueman@quadrics.com,
Hugh Dickins <hugh@veritas.com>
Subject: Re: [kvm-devel] [PATCH] export notifier #1
Date: Wed, 23 Jan 2008 15:12:36 +0100 [thread overview]
Message-ID: <47974B54.30407@redhat.com> (raw)
In-Reply-To: <20080123131939.GJ26420@sgi.com>
Hi,
>> That would render the notifies useless for Xen too. Xen needs to
>> intercept the actual pte clear and instead of just zapping it use the
>> hypercall to do the unmap and release the grant.
>
> We are tackling that by having our own page table hanging off the
> structure representing our seg (thing created when we do the equiv of
> your grant call).
--verbose please. I don't understand that "own page table" trick. Is
that page table actually used by the processor or is it just used to
maintain some sort of page list?
>> Current implementation uses a new vm_ops operation which is called if
>> present instead of doing a ptep_get_and_clear_full(). It is in the
>> XenSource tree only, mainline hasn't this yet due to implementing only
>> the DomU bits so far. When adding Dom0 support to mainline we'll need
>> some way to handle it, and I'd like to see the notifies be designed in a
>> way that Xen can simply use them.
>
> Would the callouts Christoph proposed work for you if you maintained
> your own page table and moved them after the callouts the mmu_notifiers
> are using.
I *think* it would. I'm not that deep in the VM details to be sure
though. One possible problem I see is that the hypercall does also tear
down the mapping, so this isn't just a notify but also changes the page
tables, which could confuse the VM later on when it comes to the actual
pte clearing.
cheers,
Gerd
WARNING: multiple messages have this Message-ID (diff)
From: Gerd Hoffmann <kraxel-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Robin Holt <holt-sJ/iWh9BUns@public.gmane.org>
Cc: Andrew Morton <akpm-3NddpPZAyC0@public.gmane.org>,
Nick Piggin <npiggin-l3A5Bk7waGM@public.gmane.org>,
Andrea Arcangeli <andrea-atKUWr5tajBWk0Htik3J/w@public.gmane.org>,
kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
Benjamin Herrenschmidt
<benh-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org>,
steiner-sJ/iWh9BUns@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>,
linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org,
daniel.blueman-xqY44rlHlBpWk0Htik3J/w@public.gmane.org,
Hugh Dickins <hugh-DTz5qymZ9yRBDgjK7y7TUQ@public.gmane.org>,
Christoph Lameter <clameter-sJ/iWh9BUns@public.gmane.org>
Subject: Re: [PATCH] export notifier #1
Date: Wed, 23 Jan 2008 15:12:36 +0100 [thread overview]
Message-ID: <47974B54.30407@redhat.com> (raw)
In-Reply-To: <20080123131939.GJ26420-sJ/iWh9BUns@public.gmane.org>
Hi,
>> That would render the notifies useless for Xen too. Xen needs to
>> intercept the actual pte clear and instead of just zapping it use the
>> hypercall to do the unmap and release the grant.
>
> We are tackling that by having our own page table hanging off the
> structure representing our seg (thing created when we do the equiv of
> your grant call).
--verbose please. I don't understand that "own page table" trick. Is
that page table actually used by the processor or is it just used to
maintain some sort of page list?
>> Current implementation uses a new vm_ops operation which is called if
>> present instead of doing a ptep_get_and_clear_full(). It is in the
>> XenSource tree only, mainline hasn't this yet due to implementing only
>> the DomU bits so far. When adding Dom0 support to mainline we'll need
>> some way to handle it, and I'd like to see the notifies be designed in a
>> way that Xen can simply use them.
>
> Would the callouts Christoph proposed work for you if you maintained
> your own page table and moved them after the callouts the mmu_notifiers
> are using.
I *think* it would. I'm not that deep in the VM details to be sure
though. One possible problem I see is that the hypercall does also tear
down the mapping, so this isn't just a notify but also changes the page
tables, which could confuse the VM later on when it comes to the actual
pte clearing.
cheers,
Gerd
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
WARNING: multiple messages have this Message-ID (diff)
From: Gerd Hoffmann <kraxel@redhat.com>
To: Robin Holt <holt@sgi.com>
Cc: Christoph Lameter <clameter@sgi.com>,
Andrea Arcangeli <andrea@qumranet.com>,
Andrew Morton <akpm@osdl.org>, Nick Piggin <npiggin@suse.de>,
linux-mm@kvack.org,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
steiner@sgi.com, linux-kernel@vger.kernel.org,
Avi Kivity <avi@qumranet.com>,
kvm-devel@lists.sourceforge.net, daniel.blueman@quadrics.com,
Hugh Dickins <hugh@veritas.com>
Subject: Re: [kvm-devel] [PATCH] export notifier #1
Date: Wed, 23 Jan 2008 15:12:36 +0100 [thread overview]
Message-ID: <47974B54.30407@redhat.com> (raw)
In-Reply-To: <20080123131939.GJ26420@sgi.com>
>> That would render the notifies useless for Xen too. Xen needs to
>> intercept the actual pte clear and instead of just zapping it use the
>> hypercall to do the unmap and release the grant.
>
> We are tackling that by having our own page table hanging off the
> structure representing our seg (thing created when we do the equiv of
> your grant call).
--verbose please. I don't understand that "own page table" trick. Is
that page table actually used by the processor or is it just used to
maintain some sort of page list?
>> Current implementation uses a new vm_ops operation which is called if
>> present instead of doing a ptep_get_and_clear_full(). It is in the
>> XenSource tree only, mainline hasn't this yet due to implementing only
>> the DomU bits so far. When adding Dom0 support to mainline we'll need
>> some way to handle it, and I'd like to see the notifies be designed in a
>> way that Xen can simply use them.
>
> Would the callouts Christoph proposed work for you if you maintained
> your own page table and moved them after the callouts the mmu_notifiers
> are using.
I *think* it would. I'm not that deep in the VM details to be sure
though. One possible problem I see is that the hypercall does also tear
down the mapping, so this isn't just a notify but also changes the page
tables, which could confuse the VM later on when it comes to the actual
pte clearing.
cheers,
Gerd
--
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>
next prev parent reply other threads:[~2008-01-23 14:13 UTC|newest]
Thread overview: 192+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-13 16:24 [PATCH] mmu notifiers #v2 Andrea Arcangeli
2008-01-13 16:24 ` Andrea Arcangeli
2008-01-13 16:24 ` Andrea Arcangeli
2008-01-13 21:11 ` Benjamin Herrenschmidt
2008-01-13 21:11 ` Benjamin Herrenschmidt
2008-01-13 21:11 ` Benjamin Herrenschmidt
2008-01-14 20:02 ` Christoph Lameter
2008-01-14 20:02 ` Christoph Lameter
2008-01-14 20:02 ` Christoph Lameter
2008-01-15 4:28 ` Benjamin Herrenschmidt
2008-01-15 4:28 ` Benjamin Herrenschmidt
2008-01-15 4:28 ` Benjamin Herrenschmidt
2008-01-15 12:44 ` Andrea Arcangeli
2008-01-15 12:44 ` Andrea Arcangeli
2008-01-15 12:44 ` Andrea Arcangeli
2008-01-15 20:18 ` Benjamin Herrenschmidt
2008-01-15 20:18 ` Benjamin Herrenschmidt
2008-01-15 20:18 ` Benjamin Herrenschmidt
2008-01-16 1:06 ` Andrea Arcangeli
2008-01-16 1:06 ` Andrea Arcangeli
2008-01-16 9:01 ` Brice Goglin
2008-01-16 9:01 ` Brice Goglin
2008-01-16 10:19 ` Andrea Arcangeli
2008-01-16 10:19 ` Andrea Arcangeli
2008-01-16 17:42 ` Rik van Riel
2008-01-16 17:42 ` Rik van Riel
2008-01-16 17:42 ` Rik van Riel
2008-01-16 17:48 ` Izik Eidus
2008-01-16 17:48 ` Izik Eidus
2008-01-16 17:48 ` Izik Eidus
2008-01-17 16:23 ` Andrea Arcangeli
2008-01-17 16:23 ` Andrea Arcangeli
2008-01-17 16:23 ` Andrea Arcangeli
2008-01-17 18:21 ` Izik Eidus
2008-01-17 18:21 ` Izik Eidus
2008-01-17 19:32 ` Andrea Arcangeli
2008-01-17 19:32 ` Andrea Arcangeli
2008-01-17 19:32 ` Andrea Arcangeli
2008-01-21 12:52 ` [PATCH] mmu notifiers #v3 Andrea Arcangeli
2008-01-21 12:52 ` Andrea Arcangeli
2008-01-21 12:52 ` Andrea Arcangeli
2008-01-22 2:21 ` Rik van Riel
2008-01-22 2:21 ` Rik van Riel
2008-01-22 2:21 ` Rik van Riel
2008-01-22 14:12 ` [kvm-devel] " Avi Kivity
2008-01-22 14:12 ` Avi Kivity
2008-01-22 14:12 ` Avi Kivity
2008-01-22 14:43 ` [kvm-devel] " Andrea Arcangeli
2008-01-22 14:43 ` Andrea Arcangeli
2008-01-22 14:43 ` Andrea Arcangeli
2008-01-22 20:08 ` [kvm-devel] [PATCH] mmu notifiers #v4 Andrea Arcangeli
2008-01-22 20:08 ` Andrea Arcangeli
2008-01-22 20:08 ` Andrea Arcangeli
2008-01-22 20:34 ` [kvm-devel] [PATCH] export notifier #1 Christoph Lameter
2008-01-22 20:34 ` Christoph Lameter
2008-01-22 20:34 ` Christoph Lameter
2008-01-22 22:31 ` [kvm-devel] " Andrea Arcangeli
2008-01-22 22:31 ` Andrea Arcangeli
2008-01-22 22:31 ` Andrea Arcangeli
2008-01-22 22:53 ` [kvm-devel] " Christoph Lameter
2008-01-22 22:53 ` Christoph Lameter
2008-01-22 22:53 ` Christoph Lameter
2008-01-23 10:27 ` [kvm-devel] " Avi Kivity
2008-01-23 10:27 ` Avi Kivity
2008-01-23 10:27 ` Avi Kivity
2008-01-23 10:52 ` [kvm-devel] " Robin Holt
2008-01-23 10:52 ` Robin Holt
2008-01-23 10:52 ` Robin Holt
2008-01-23 12:04 ` [kvm-devel] " Andrea Arcangeli
2008-01-23 12:04 ` Andrea Arcangeli
2008-01-23 12:34 ` Robin Holt
2008-01-23 12:34 ` Robin Holt
2008-01-23 12:34 ` Robin Holt
2008-01-23 19:48 ` [kvm-devel] " Christoph Lameter
2008-01-23 19:48 ` Christoph Lameter
2008-01-23 19:48 ` Christoph Lameter
2008-01-23 19:58 ` [kvm-devel] " Robin Holt
2008-01-23 19:58 ` Robin Holt
2008-01-23 19:58 ` Robin Holt
2008-01-23 19:47 ` [kvm-devel] " Christoph Lameter
2008-01-23 19:47 ` Christoph Lameter
2008-01-23 19:47 ` Christoph Lameter
2008-01-24 5:56 ` [kvm-devel] " Avi Kivity
2008-01-24 5:56 ` Avi Kivity
2008-01-24 5:56 ` Avi Kivity
2008-01-24 12:26 ` [kvm-devel] " Andrea Arcangeli
2008-01-24 12:26 ` Andrea Arcangeli
2008-01-24 12:26 ` Andrea Arcangeli
2008-01-24 12:34 ` [kvm-devel] " Avi Kivity
2008-01-24 12:34 ` Avi Kivity
2008-01-24 12:34 ` Avi Kivity
2008-01-23 11:41 ` [kvm-devel] " Andrea Arcangeli
2008-01-23 11:41 ` Andrea Arcangeli
2008-01-23 11:41 ` Andrea Arcangeli
2008-01-23 12:32 ` [kvm-devel] " Robin Holt
2008-01-23 12:32 ` Robin Holt
2008-01-23 12:32 ` Robin Holt
2008-01-23 17:33 ` [kvm-devel] " Andrea Arcangeli
2008-01-23 17:33 ` Andrea Arcangeli
2008-01-23 17:33 ` Andrea Arcangeli
2008-01-23 20:27 ` [kvm-devel] " Christoph Lameter
2008-01-23 20:27 ` Christoph Lameter
2008-01-23 20:27 ` Christoph Lameter
2008-01-24 15:42 ` [kvm-devel] " Andrea Arcangeli
2008-01-24 15:42 ` Andrea Arcangeli
2008-01-24 20:07 ` Christoph Lameter
2008-01-24 20:07 ` Christoph Lameter
2008-01-24 20:07 ` Christoph Lameter
2008-01-25 6:35 ` [kvm-devel] " Avi Kivity
2008-01-25 6:35 ` Avi Kivity
2008-01-25 6:35 ` Avi Kivity
2008-01-23 20:18 ` [kvm-devel] " Christoph Lameter
2008-01-23 20:18 ` Christoph Lameter
2008-01-23 20:18 ` Christoph Lameter
2008-01-24 14:34 ` [kvm-devel] " Andrea Arcangeli
2008-01-24 14:34 ` Andrea Arcangeli
2008-01-24 14:34 ` Andrea Arcangeli
2008-01-24 14:41 ` [kvm-devel] " Andrea Arcangeli
2008-01-24 14:41 ` Andrea Arcangeli
2008-01-24 14:41 ` Andrea Arcangeli
2008-01-24 15:15 ` [kvm-devel] " Avi Kivity
2008-01-24 15:15 ` Avi Kivity
2008-01-24 15:15 ` Avi Kivity
2008-01-24 15:18 ` [kvm-devel] " Avi Kivity
2008-01-24 15:18 ` Avi Kivity
2008-01-24 15:18 ` Avi Kivity
2008-01-24 20:01 ` [kvm-devel] " Christoph Lameter
2008-01-24 20:01 ` Christoph Lameter
2008-01-24 20:01 ` Christoph Lameter
2008-01-22 23:36 ` [kvm-devel] " Benjamin Herrenschmidt
2008-01-22 23:36 ` Benjamin Herrenschmidt
2008-01-22 23:36 ` Benjamin Herrenschmidt
2008-01-23 0:40 ` [kvm-devel] " Christoph Lameter
2008-01-23 0:40 ` Christoph Lameter
2008-01-23 0:40 ` Christoph Lameter
2008-01-23 1:21 ` [kvm-devel] " Robin Holt
2008-01-23 1:21 ` Robin Holt
2008-01-23 1:21 ` Robin Holt
2008-01-23 12:51 ` [kvm-devel] " Gerd Hoffmann
2008-01-23 12:51 ` Gerd Hoffmann
2008-01-23 12:51 ` Gerd Hoffmann
2008-01-23 13:19 ` [kvm-devel] " Robin Holt
2008-01-23 13:19 ` Robin Holt
2008-01-23 13:19 ` Robin Holt
2008-01-23 14:12 ` Gerd Hoffmann [this message]
2008-01-23 14:12 ` [kvm-devel] " Gerd Hoffmann
2008-01-23 14:12 ` Gerd Hoffmann
2008-01-23 14:18 ` [kvm-devel] " Robin Holt
2008-01-23 14:18 ` Robin Holt
2008-01-23 14:18 ` Robin Holt
2008-01-23 14:35 ` [kvm-devel] " Gerd Hoffmann
2008-01-23 14:35 ` Gerd Hoffmann
2008-01-23 14:35 ` Gerd Hoffmann
2008-01-23 15:48 ` [kvm-devel] " Robin Holt
2008-01-23 15:48 ` Robin Holt
2008-01-23 15:48 ` Robin Holt
2008-01-23 14:17 ` [kvm-devel] " Avi Kivity
2008-01-23 14:17 ` Avi Kivity
2008-01-23 14:17 ` Avi Kivity
2008-01-24 4:03 ` [kvm-devel] " Benjamin Herrenschmidt
2008-01-24 4:03 ` Benjamin Herrenschmidt
2008-01-24 4:03 ` Benjamin Herrenschmidt
2008-01-23 15:41 ` [kvm-devel] " Andrea Arcangeli
2008-01-23 15:41 ` Andrea Arcangeli
2008-01-23 17:47 ` Gerd Hoffmann
2008-01-23 17:47 ` Gerd Hoffmann
2008-01-23 17:47 ` Gerd Hoffmann
2008-01-24 6:01 ` [kvm-devel] " Avi Kivity
2008-01-24 6:01 ` Avi Kivity
2008-01-24 6:01 ` Avi Kivity
2008-01-24 6:45 ` [kvm-devel] " Jeremy Fitzhardinge
2008-01-24 6:45 ` Jeremy Fitzhardinge
2008-01-23 20:40 ` Christoph Lameter
2008-01-23 20:40 ` Christoph Lameter
2008-01-23 20:40 ` Christoph Lameter
2008-01-24 2:00 ` Enhance mmu notifiers to accomplish a lockless implementation (incomplete) Robin Holt
2008-01-24 2:00 ` Robin Holt
2008-01-24 2:00 ` Robin Holt
2008-01-24 4:05 ` Robin Holt
2008-01-24 4:05 ` Robin Holt
2008-01-24 4:05 ` Robin Holt
2008-01-22 19:28 ` [PATCH] mmu notifiers #v3 Peter Zijlstra
2008-01-22 19:28 ` Peter Zijlstra
2008-01-22 20:31 ` Christoph Lameter
2008-01-22 20:31 ` Christoph Lameter
2008-01-22 20:31 ` Christoph Lameter
2008-01-22 20:31 ` Andrea Arcangeli
2008-01-22 20:31 ` Andrea Arcangeli
2008-01-22 20:31 ` Andrea Arcangeli
2008-01-22 22:10 ` Hugh Dickins
2008-01-22 22:10 ` Hugh Dickins
2008-01-22 22:10 ` Hugh Dickins
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=47974B54.30407@redhat.com \
--to=kraxel@redhat.com \
--cc=akpm@osdl.org \
--cc=andrea@qumranet.com \
--cc=avi@qumranet.com \
--cc=benh@kernel.crashing.org \
--cc=clameter@sgi.com \
--cc=daniel.blueman@quadrics.com \
--cc=holt@sgi.com \
--cc=hugh@veritas.com \
--cc=kvm-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=npiggin@suse.de \
--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 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.