All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: "Nakajima, Jun" <jun.nakajima-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: Status of SMP?
Date: Thu, 15 Mar 2007 10:43:20 +0200	[thread overview]
Message-ID: <45F90728.2040207@qumranet.com> (raw)
In-Reply-To: <8FFF7E42E93CC646B632AB40643802A802385E65-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>

Nakajima, Jun wrote:
> The key is the virtual MMU; getting bootstrap/IPI working is
> straightforward. 

I'm glad to hear you say that.


> Without NPT or EPT, we need to have an SMP-capable
> shadow pagetable code. I think one of the most efficient ways is to
> re-use the code from Xen. The current one is the third generation of the
> shadow page table, and it works well. 
>   

I'm fairly certain a rip-it-the-old-and-plug-in-the-new approach would 
be rejected.  Linux development requires incremental patches.

I'm not familiar with the current Xen shadow code, but a cursory look 
gave the following impressions:

- it is single threaded, so there's no reason to expect more scalability 
out of it
- it is lighter weight, by not maintaining a full reverse mapping.  on 
the other hand, it is less generic (requires special handling for 
linearized page tables)
- does order 2 allocations (which work in Linux, but get less reliable 
as uptime increases)

I don't see a compelling reason to change here, but of course I may have 
missed something and I'm also biased.

Getting the kvm mmu to do smp involves the following, as far as I can tell:

- verifying that all the locking in place is correct
- make sure that spurious faults (due to races) are handled well
- install shadow ptes atomically instead of building them incrementally
- replace local tlb flushes by remote tlb flushes (for cpus that have 
touched the domain, and later, for cpus that have touched the pagetable)

-- 
Do not meddle in the internals of kernels, for they are subtle and quick to panic.


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

  parent reply	other threads:[~2007-03-15  8:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-13 12:47 Status of SMP? Gregory Haskins
     [not found] ` <45F66525.BA47.005A.0-Et1tbQHTxzrQT0dZR+AlfA@public.gmane.org>
2007-03-13 13:16   ` Avi Kivity
     [not found]     ` <45F67F12.BA47.005A.0@novell.com>
     [not found]       ` <45F6B962.9070301@qumranet.com>
     [not found]         ` <45F684E7.BA47.005A.0@novell.com>
     [not found]           ` <45F6BEC0.1010906@qumranet.com>
     [not found]             ` <45F68E68.BA47.005A.0@novell.com>
2007-03-13 15:47               ` Fwd: " Gregory Haskins
     [not found]     ` <45F6A426.9090004-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-14 21:09       ` Nakajima, Jun
     [not found]         ` <8FFF7E42E93CC646B632AB40643802A802385E65-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-03-15  8:43           ` Avi Kivity [this message]
     [not found]             ` <45F90728.2040207-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-15 22:08               ` Nakajima, Jun
     [not found]                 ` <8FFF7E42E93CC646B632AB40643802A8023B861B-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-03-16  6:46                   ` Avi Kivity
     [not found]                     ` <45FA3D2F.4070603-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-03-16 15:21                       ` Nakajima, Jun
     [not found]                         ` <8FFF7E42E93CC646B632AB40643802A8023B8983-1a9uaKK1+wJcIJlls4ac1rfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2007-03-18  5:48                           ` Avi Kivity
2007-03-16 14:35               ` Huang2, Wei
2007-03-16 17:51               ` Huang2, Wei
     [not found]                 ` <7D748C767B7FA541A8AC5504A4C89A23015685C1-SXV0rU3j2e+jL8BtgrxzBQC/G2K4zDHf@public.gmane.org>
2007-03-18  5:14                   ` Avi Kivity

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=45F90728.2040207@qumranet.com \
    --to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
    --cc=jun.nakajima-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    /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.