From: Avi Kivity <avi@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/3] Memory API mutators
Date: Wed, 14 Sep 2011 13:02:54 +0300 [thread overview]
Message-ID: <4E707BCE.60100@redhat.com> (raw)
In-Reply-To: <CAFEAcA_7CNFQwXME61Xy6o80UcTZY5incbB5yQsbSXkFbPUUgg@mail.gmail.com>
On 09/14/2011 12:56 PM, Peter Maydell wrote:
> On 14 September 2011 10:23, Avi Kivity<avi@redhat.com> wrote:
> > This patchset introduces memory_region_set_enabled() and
> > memory_region_set_address() to avoid the requirement on memory
> > routers to track the internal state of the memory API (so they know
> > whether they need to add or remove a region). Instead, they can
> > simply copy the state of the region from the guest-exposed register
> > to the memory core, via the new mutator functions.
> >
> > Please review. Do we need a memory_region_set_size() as well?
>
> Would set_size() allow things like omap_gpmc() to avoid the need
> to create an intermediate container subregion to enforce size
> clipping on the child region it's trying to map?
I'd recommend not calling _set_size() on somebody else's region - this
quickly leads to confusion. Only call set_size() if you also called
_init() and will call _destroy().
Can you point me at the code in question?
_set_size() may be useful for dynamic bridge windows and the like.
> (Strictly speaking what omap_gpmc() wants is not merely clipping
> to a guest-specified size but also wrapping, so you can take a
> 16MB child region and map the bottom 4MB of it repeating into
> a 32MB chunk of address space, say. But that would require a lot
> of playing games with aliases to implement a bizarre corner
> case that nobody uses in practice.)
>
That's best done in the memory core, the rendering loop can be adjusted
to do this replication.
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2011-09-14 10:03 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-14 9:23 [Qemu-devel] [PATCH 0/3] Memory API mutators Avi Kivity
2011-09-14 9:23 ` [Qemu-devel] [PATCH 1/3] memory: introduce memory_region_set_enabled() Avi Kivity
2011-09-14 9:23 ` [Qemu-devel] [PATCH 2/3] memory: introduce memory_region_set_address() Avi Kivity
2011-09-14 9:23 ` [Qemu-devel] [PATCH 3/3] memory: optimize empty transactions due to mutators Avi Kivity
2011-09-14 9:49 ` [Qemu-devel] [PATCH 0/3] Memory API mutators Avi Kivity
2011-09-14 10:27 ` Jan Kiszka
2011-09-14 11:46 ` Avi Kivity
2011-09-14 9:56 ` Peter Maydell
2011-09-14 10:02 ` Avi Kivity [this message]
2011-09-14 10:21 ` Peter Maydell
2011-09-14 11:54 ` 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=4E707BCE.60100@redhat.com \
--to=avi@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.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.