qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: Alexander Graf <agraf@suse.de>
Cc: Stefan Weil <sw@weilnetz.de>, QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] 2 MiB alignment in qemu_vmalloc()
Date: Sun, 16 Oct 2011 10:41:38 +0200	[thread overview]
Message-ID: <4E9A98C2.9050804@redhat.com> (raw)
In-Reply-To: <D77A33DB-3BED-47C4-8056-0EC953DEAAD9@suse.de>

On 10/12/2011 10:02 PM, Alexander Graf wrote:
> On 12.10.2011, at 20:05, Stefan Weil wrote:
>
> > Hello Avi,
> > 
> > commit 36b58628 increased the alignment for some large memory
> > blocks (typically the system RAM) to 2 MiB (QEMU_VMALLOC_ALIGN)
> > on x86_64 Linux hosts.
> > 
> > As far as I know, this was only required for KVM.
> > 
> > There is a bad side effect of this increase: the Valgrind tool
> > only supports an alignment of up to 1 MiB. It aborts execution
> > with current QEMU for any target (even non-KVM targets).
> > 
> > It might be possible to modify Valgrind (as far as I know this
> > is already discussed), and of course I can also patch my local
> > QEMU. Nevertheless, I think the alignment should be reduced
> > again when there is no KVM support or KVM is disabled.
> > Maybe the large alignment has other unwanted side effects.
>
> Actually, I'd much rather prefer to keep the differences between KVM and non-KVM low here. THP can potentially also work on TCG, so the alignment isn't completely moot here. Though it's certainly a lot less useful, as code isn't directly executed from there and we the rest of the overhead is a lot higher either way (especially the softmmu one).

Note thp will still work with tcg, even without alignment.  The
alignment requirement is specific to kvm.

> Either way, why does valgrind break when we enforce big alignment? That really sounds more like a valgrind bug than anything else. Memalign is there for exactly that reason, no?
>

Agreed, seems like a valgrind limitation that needs to be lifted if
possible.

-- 
error compiling committee.c: too many arguments to function

      parent reply	other threads:[~2011-10-16  8:41 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-12 18:05 [Qemu-devel] 2 MiB alignment in qemu_vmalloc() Stefan Weil
2011-10-12 20:02 ` Alexander Graf
2011-10-12 20:41   ` Stefan Weil
2011-10-12 20:47     ` Alexander Graf
2011-10-12 21:19       ` Stefan Weil
2011-10-12 21:30         ` Alexander Graf
2011-10-13  7:56         ` Gerd Hoffmann
2011-10-13 13:23           ` Paolo Bonzini
2011-10-16  8:41   ` Avi Kivity [this message]

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=4E9A98C2.9050804@redhat.com \
    --to=avi@redhat.com \
    --cc=agraf@suse.de \
    --cc=qemu-devel@nongnu.org \
    --cc=sw@weilnetz.de \
    /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).