kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@web.de>
To: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Cc: Avi Kivity <avi@redhat.com>,
	Lucas Meneghel Rodrigues <lmr@redhat.com>,
	KVM mailing list <kvm@vger.kernel.org>,
	Michael Goldish <mgoldish@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	Dor Laor <dlaor@redhat.com>
Subject: Re: qemu-kvm.git build problem
Date: Tue, 12 Jan 2010 01:23:15 +0100	[thread overview]
Message-ID: <4B4BC0F3.2010507@web.de> (raw)
In-Reply-To: <4B4AFBC7.1020801@siemens.com>

[-- Attachment #1: Type: text/plain, Size: 1534 bytes --]

Jan Kiszka wrote:
> Avi Kivity wrote:
>> On 01/11/2010 12:13 PM, Jan Kiszka wrote:
>>> BTW, does anybody know how to back-port synchronize_srcu_expedited best?
>>> It looked like a simple mapping to synchronize_srcu was not sufficient
>>> to achieve the same performance as with the pre-srcu locking (e.g.
>>> guest&host stalled during guest's framebuffer setup).
>>>    
>> Isn't it sufficient to backport kernel/srcu.c?  I thought no sched.c 
>> changes were necessary.
> 
> Haven't looked yet, but if that's the case, it would indeed be
> straightforward.

It's far away from being straightforward: synchronize_rcu_expedited is
based on synchronize_sched_expedited, introduced to 2.6.32. But that
services is hooked deep into the scheduler, fiddling directly with
runqueues (which are completely private to sched.c). This path looks
like a dead end, specifically when its about supporting ~8 major Linux
releases backwards.

Paul, we have a problem here on the KVM-for-older-kernels front: We need
synchronize_rcu_expedited for acceptable write-side performance (there
are certain phases with lots of changes, plain synchronize_rcu just
stalls both guest and host for several seconds). Our target kernels
(down to 2.6.27, unofficially even 2.6.24) do not have the expedited
service. Can you think of a poor man's solution for those kernels?

Unfortunately, I don't think there is mechanical patching possible to
role-back our srcu use to a rw-sem. But I will check this once again
tomorrow.

Jan


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 257 bytes --]

  reply	other threads:[~2010-01-12  0:23 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-28 18:40 qemu-kvm.git build problem Lucas Meneghel Rodrigues
2009-12-28 19:55 ` Avi Kivity
2010-01-09  5:23 ` Lucas Meneghel Rodrigues
2010-01-11 10:13   ` Jan Kiszka
2010-01-11 10:18     ` Avi Kivity
2010-01-11 10:21       ` Jan Kiszka
2010-01-12  0:23         ` Jan Kiszka [this message]
2010-01-12  0:51           ` Paul E. McKenney
2010-01-12  8:28             ` Jan Kiszka
2010-01-12 13:50               ` Paul E. McKenney
2010-01-14  0:11                 ` Jan Kiszka
2010-01-14  2:13                   ` Paul E. McKenney
2010-01-15  8:58                     ` Jan Kiszka
2010-01-18  2:09                       ` Paul E. McKenney
2010-01-14 20:02                   ` Lucas Meneghel Rodrigues
2010-01-14 23:48                   ` Paul E. McKenney
2010-01-15  8:56                     ` Jan Kiszka

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=4B4BC0F3.2010507@web.de \
    --to=jan.kiszka@web.de \
    --cc=avi@redhat.com \
    --cc=dlaor@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=lmr@redhat.com \
    --cc=mgoldish@redhat.com \
    --cc=paulmck@linux.vnet.ibm.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;
as well as URLs for NNTP newsgroup(s).