From: Anthony Liguori <anthony@codemonkey.ws>
To: Marcelo Tosatti <mtosatti@redhat.com>
Cc: Anthony Liguori <aliguori@us.ibm.com>,
Cam Macdonell <cam@cs.ualberta.ca>,
qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: [Qemu-devel] Re: [PATCH 10/10] introduce qemu_ram_map
Date: Mon, 26 Apr 2010 13:29:06 -0500 [thread overview]
Message-ID: <4BD5DB72.3030707@codemonkey.ws> (raw)
In-Reply-To: <2e085c19aac78e6c4335eac4fffeb5cfca4bbb26.1272304746.git.mtosatti@redhat.com>
On 04/26/2010 12:59 PM, Marcelo Tosatti wrote:
> Which allows drivers to register an mmaped region into ram block mappings.
> To be used by device assignment driver.
>
>
This is not kvm specific and not required by this pull request so it
shouldn't really be part of the pull. Something like this should only
be added when there's an actual consumer.
Regards,
Anthony Liguori
> CC: Cam Macdonell<cam@cs.ualberta.ca>
> Signed-off-by: Marcelo Tosatti<mtosatti@redhat.com>
> ---
> cpu-common.h | 1 +
> exec.c | 28 ++++++++++++++++++++++++++++
> 2 files changed, 29 insertions(+), 0 deletions(-)
>
> diff --git a/cpu-common.h b/cpu-common.h
> index b24cecc..2dfde6f 100644
> --- a/cpu-common.h
> +++ b/cpu-common.h
> @@ -40,6 +40,7 @@ static inline void cpu_register_physical_memory(target_phys_addr_t start_addr,
> }
>
> ram_addr_t cpu_get_physical_page_desc(target_phys_addr_t addr);
> +ram_addr_t qemu_ram_map(ram_addr_t size, void *host);
> ram_addr_t qemu_ram_alloc(ram_addr_t);
> void qemu_ram_free(ram_addr_t addr);
> /* This should only be used for ram local to a device. */
> diff --git a/exec.c b/exec.c
> index 14d1fd7..648a9c9 100644
> --- a/exec.c
> +++ b/exec.c
> @@ -2789,6 +2789,34 @@ static void *file_ram_alloc(ram_addr_t memory, const char *path)
> }
> #endif
>
> +ram_addr_t qemu_ram_map(ram_addr_t size, void *host)
> +{
> + RAMBlock *new_block;
> +
> + size = TARGET_PAGE_ALIGN(size);
> + new_block = qemu_malloc(sizeof(*new_block));
> +
> + new_block->host = host;
> +
> + new_block->offset = last_ram_offset;
> + new_block->length = size;
> +
> + new_block->next = ram_blocks;
> + ram_blocks = new_block;
> +
> + phys_ram_dirty = qemu_realloc(phys_ram_dirty,
> + (last_ram_offset + size)>> TARGET_PAGE_BITS);
> + memset(phys_ram_dirty + (last_ram_offset>> TARGET_PAGE_BITS),
> + 0xff, size>> TARGET_PAGE_BITS);
> +
> + last_ram_offset += size;
> +
> + if (kvm_enabled())
> + kvm_setup_guest_memory(new_block->host, size);
> +
> + return new_block->offset;
> +}
> +
> ram_addr_t qemu_ram_alloc(ram_addr_t size)
> {
> RAMBlock *new_block;
>
next prev parent reply other threads:[~2010-04-26 18:29 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-26 17:58 [Qemu-devel] [PATCH 00/10] [PULL] qemu-kvm.git uq/master queue Marcelo Tosatti
2010-04-26 17:58 ` [Qemu-devel] [PATCH 01/10] KVM: x86: Add debug register saving and restoring Marcelo Tosatti
2010-04-26 17:58 ` [Qemu-devel] [PATCH 02/10] target-i386: print EFER in cpu_dump_state Marcelo Tosatti
2010-04-26 17:58 ` [Qemu-devel] [PATCH 03/10] kvm: handle internal error Marcelo Tosatti
2010-04-26 17:59 ` [Qemu-devel] [PATCH 04/10] kvm: allow qemu to set EPT identity mapping address Marcelo Tosatti
2010-04-26 17:59 ` [Qemu-devel] [PATCH 05/10] kvm_init_vcpu requires global lock held Marcelo Tosatti
2010-04-26 17:59 ` [Qemu-devel] [PATCH 06/10] kvm: remove explicit kvm_arch_reset_vcpu from kvm_init_vcpu Marcelo Tosatti
2010-04-28 15:39 ` [Qemu-devel] " Anthony Liguori
2010-04-28 16:22 ` Marcelo Tosatti
2010-04-28 16:42 ` Marcelo Tosatti
2010-04-28 16:46 ` Anthony Liguori
2010-04-26 17:59 ` [Qemu-devel] [PATCH 07/10] vga: fix typo in length passed to kvm_log_stop Marcelo Tosatti
2010-04-26 17:59 ` [Qemu-devel] [PATCH 08/10] introduce leul_to_cpu Marcelo Tosatti
2010-04-26 17:59 ` [Qemu-devel] [PATCH 09/10] kvm: port qemu-kvm's bitmap scanning Marcelo Tosatti
2010-04-27 4:49 ` [Qemu-devel] " Yoshiaki Tamura
2010-04-27 14:42 ` Marcelo Tosatti
2010-04-27 23:09 ` Yoshiaki Tamura
2010-04-26 17:59 ` [Qemu-devel] [PATCH 10/10] introduce qemu_ram_map Marcelo Tosatti
2010-04-26 18:27 ` [Qemu-devel] " Anthony Liguori
2010-04-26 18:49 ` Marcelo Tosatti
2010-04-26 18:54 ` Anthony Liguori
2010-04-27 14:28 ` Cam Macdonell
2010-04-27 14:49 ` Marcelo Tosatti
2010-04-26 18:29 ` Anthony Liguori [this message]
2010-04-26 18:50 ` Marcelo Tosatti
2010-04-26 18:57 ` Anthony Liguori
2010-04-26 19:14 ` Marcelo Tosatti
2010-04-26 19:20 ` Anthony Liguori
2010-04-26 19:45 ` Marcelo Tosatti
2010-04-27 14:32 ` Cam Macdonell
2010-04-27 14:50 ` Marcelo Tosatti
2010-05-03 13:02 ` [Qemu-devel] Re: [PATCH 00/10] [PULL] qemu-kvm.git uq/master queue Anthony Liguori
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=4BD5DB72.3030707@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=aliguori@us.ibm.com \
--cc=cam@cs.ualberta.ca \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@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).