From: Alexey Kardashevskiy <aik@ozlabs.ru>
To: qemu-devel@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>
Subject: Re: [Qemu-devel] [PATCH qemu v3 07/13] memory: Switch memory from using AddressSpace to FlatView
Date: Tue, 19 Sep 2017 00:06:21 +1000 [thread overview]
Message-ID: <cdc396c4-f09e-baf3-6da8-8a30122bac4e@ozlabs.ru> (raw)
In-Reply-To: <20170918101709.30421-8-aik@ozlabs.ru>
On 18/09/17 20:17, Alexey Kardashevskiy wrote:
> FlatView's will be shared between AddressSpace's and subpage_t
> and MemoryRegionSection cannot store AS anymore, hence this change.
>
> In particular, for:
>
> typedef struct subpage_t {
> MemoryRegion iomem;
> - AddressSpace *as;
> + FlatView *fv;
> hwaddr base;
> uint16_t sub_section[];
> } subpage_t;
>
> struct MemoryRegionSection {
> MemoryRegion *mr;
> - AddressSpace *address_space;
> + FlatView *fv;
> hwaddr offset_within_region;
> Int128 size;
> hwaddr offset_within_address_space;
> bool readonly;
> };
>
> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
> ---
> include/exec/memory-internal.h | 2 +-
> include/exec/memory.h | 51 ++++++++----
> exec.c | 180 ++++++++++++++++++++++++-----------------
> hw/intc/openpic_kvm.c | 2 +-
> memory.c | 28 ++++---
> 5 files changed, 157 insertions(+), 106 deletions(-)
>
> diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h
> index 6e08eda256..1cf8ad9869 100644
> --- a/include/exec/memory-internal.h
> +++ b/include/exec/memory-internal.h
> @@ -27,7 +27,7 @@ extern const MemoryRegionOps unassigned_mem_ops;
> bool memory_region_access_valid(MemoryRegion *mr, hwaddr addr,
> unsigned size, bool is_write);
>
> -void mem_add(AddressSpace *as, FlatView *fv, MemoryRegionSection *section);
> +void mem_add(FlatView *fv, MemoryRegionSection *section);
> AddressSpaceDispatch *mem_begin(AddressSpace *as);
> void mem_commit(AddressSpaceDispatch *d);
>
> diff --git a/include/exec/memory.h b/include/exec/memory.h
> index 2346f8b863..7816e5d655 100644
> --- a/include/exec/memory.h
> +++ b/include/exec/memory.h
> @@ -48,6 +48,7 @@
>
> typedef struct MemoryRegionOps MemoryRegionOps;
> typedef struct MemoryRegionMmio MemoryRegionMmio;
> +typedef struct FlatView FlatView;
>
This is missing, apparently. My gcc did not catch it :-/
diff --git a/memory.c b/memory.c
index 69f3334c9b..21e1a6f38f 100644
--- a/memory.c
+++ b/memory.c
@@ -209,7 +209,6 @@ static bool
memory_region_ioeventfd_equal(MemoryRegionIoeventfd a,
}
typedef struct FlatRange FlatRange;
-typedef struct FlatView FlatView;
--
Alexey
next prev parent reply other threads:[~2017-09-18 14:06 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-18 10:16 [Qemu-devel] [PATCH qemu v3 00/13] memory: Reduce memory use Alexey Kardashevskiy
2017-09-18 10:16 ` [Qemu-devel] [PATCH qemu v3 01/13] memory: Postpone flatview and dispatch tree building till all devices are added Alexey Kardashevskiy
2017-09-18 14:54 ` Paolo Bonzini
2017-09-19 2:09 ` Alexey Kardashevskiy
2017-09-19 6:57 ` Alexey Kardashevskiy
2017-09-19 7:40 ` Paolo Bonzini
2017-09-19 7:57 ` Alexey Kardashevskiy
2017-09-19 7:59 ` Paolo Bonzini
2017-09-19 7:42 ` Paolo Bonzini
2017-09-19 10:39 ` Alexey Kardashevskiy
2017-09-19 10:47 ` Paolo Bonzini
2017-09-19 14:12 ` Alexey Kardashevskiy
2017-09-19 14:23 ` Paolo Bonzini
2017-09-18 10:16 ` [Qemu-devel] [PATCH qemu v3 02/13] exec: Explicitely export target AS from address_space_translate_internal Alexey Kardashevskiy
2017-09-18 14:28 ` Eric Blake
2017-09-19 0:15 ` Alexey Kardashevskiy
2017-09-18 10:16 ` [Qemu-devel] [PATCH qemu v3 03/13] memory: Open code FlatView rendering Alexey Kardashevskiy
2017-09-18 14:28 ` Eric Blake
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 04/13] memory: Move FlatView allocation to a helper Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 05/13] memory: Move AddressSpaceDispatch from AddressSpace to FlatView Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 06/13] memory: Remove AddressSpace pointer from AddressSpaceDispatch Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 07/13] memory: Switch memory from using AddressSpace to FlatView Alexey Kardashevskiy
2017-09-18 14:06 ` Alexey Kardashevskiy [this message]
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 08/13] memory: Cleanup after switching " Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 09/13] memory: Rename mem_begin/mem_commit/mem_add helpers Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 10/13] memory: Store physical root MR in FlatView Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 11/13] memory: Share FlatView's and dispatch trees between address spaces Alexey Kardashevskiy
2017-09-18 14:37 ` Paolo Bonzini
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 12/13] memory: Get rid of address_space_init_shareable Alexey Kardashevskiy
2017-09-18 10:17 ` [Qemu-devel] [PATCH qemu v3 13/13] memory: Add flat views to HMP "info mtree" Alexey Kardashevskiy
2017-09-18 10:36 ` [Qemu-devel] [PATCH qemu v3 00/13] memory: Reduce memory use no-reply
2017-09-18 14:59 ` Paolo Bonzini
2017-09-19 0:19 ` Alexey Kardashevskiy
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=cdc396c4-f09e-baf3-6da8-8a30122bac4e@ozlabs.ru \
--to=aik@ozlabs.ru \
--cc=pbonzini@redhat.com \
--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 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).