All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Egger <Christoph.Egger@amd.com>
To: Tim Deegan <Tim.Deegan@citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: [PATCH 0 of 5] v2: Nested-p2m cleanups and locking changes
Date: Tue, 28 Jun 2011 13:04:00 +0200	[thread overview]
Message-ID: <4E09B520.7020900@amd.com> (raw)
In-Reply-To: <20110627154831.GS17634@whitby.uk.xensource.com>

On 06/27/11 17:48, Tim Deegan wrote:
> At 14:15 +0100 on 27 Jun (1309184128), Tim Deegan wrote:
>> At 14:23 +0200 on 27 Jun (1309184586), Christoph Egger wrote:
>>>>   - Why is there a 10x increase in IPIs after this series?  I don't see
>>>>     what sequence of events sets the relevant cpumask bits to make this
>>>>     happen.
>>>
>>> In patch 1 the code that sends the IPIs was outside of the loop and
>>> moved into the loop.
>>
>> Well, yes, but I don't see what that causes 10x IPIs, unless the vcpus
>> are burning through np2m tables very quickly indeed.  Maybe removing the
>> extra flushes for TLB control will do the trick.  I'll make a patch...
>
> I think I get it - it's a race between p2m_flush_nestedp2m() on one CPU
> flushing all the nested P2M tables and a VCPU on another CPU repeatedly
> getting fresh ones.  Try the attached patch, which should cut back the
> major source of p2m_flush_nestedp2m() calls.

This patch is great! It gives the speed up the XP mode needs to continue 
booting. We talked about this at the Xen-Hackathon you remember?

> Writing it, I realised that after my locking fix, p2m_flush_nestedp2m()
> isn't safe because it can run in parallel with p2m_get_nestedp2m, which
> reorders the array it walks.  I'll have to make the LRU-fu independent
> of the array order; should be easy enough but I'll hold off committing
> the current series until I've done it.

Ok.

Christoph


-- 
---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Einsteinring 24, 85689 Dornach b. Muenchen
Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632

  reply	other threads:[~2011-06-28 11:04 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-27 10:46 [PATCH 0 of 5] v2: Nested-p2m cleanups and locking changes Tim Deegan
2011-06-27 10:46 ` [PATCH 1 of 5] Nested p2m: implement "flush" as a first-class action Tim Deegan
2011-06-30  9:51   ` Olaf Hering
2011-06-30 10:02     ` Tim Deegan
2011-06-27 10:46 ` [PATCH 2 of 5] Nested p2m: remove bogus check of CR3 value Tim Deegan
2011-06-27 10:46 ` [PATCH 3 of 5] Nested p2m: clarify logic in p2m_get_nestedp2m() Tim Deegan
2011-06-27 10:46 ` [PATCH 4 of 5] Nested p2m: flush only one p2m table when reallocating Tim Deegan
2011-06-27 13:44   ` Christoph Egger
2011-06-27 14:01     ` Tim Deegan
2011-06-27 10:46 ` [PATCH 5 of 5] Nested p2m: rework locking around nested-p2m flushes and updates Tim Deegan
2011-06-27 10:56 ` [PATCH 0 of 5] v2: Nested-p2m cleanups and locking changes Tim Deegan
2011-06-27 12:23   ` Christoph Egger
2011-06-27 13:15     ` Tim Deegan
2011-06-27 13:20       ` Tim Deegan
2011-06-27 13:24         ` Christoph Egger
2011-06-27 13:55           ` Tim Deegan
2011-06-27 15:48       ` Tim Deegan
2011-06-28 11:04         ` Christoph Egger [this message]
2011-06-28 13:47         ` Christoph Egger
2011-06-30  9:49         ` Tim Deegan
2011-07-01 10:00           ` Christoph Egger

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=4E09B520.7020900@amd.com \
    --to=christoph.egger@amd.com \
    --cc=Tim.Deegan@citrix.com \
    --cc=xen-devel@lists.xensource.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.