From: Jerone Young <jyoung5-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
To: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Cc: kvm-ppc-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: [PATCH 09 of 19] Move kvm_create_memory_alias & kvm_destroy_memory_alias to libkvm-x86.c
Date: Fri, 02 Nov 2007 13:24:58 -0500 [thread overview]
Message-ID: <76218015a52046be4d77.1194027898@thinkpad> (raw)
In-Reply-To: <patchbomb.1194027889@thinkpad>
# HG changeset patch
# User Jerone Young <jyoung5-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
# Date 1194027873 18000
# Node ID 76218015a52046be4d77069c3e999b6ca60d0528
# Parent 098efe35de4493a3eda631cb2f9fd958ae303897
Move kvm_create_memory_alias & kvm_destroy_memory_alias to libkvm-x86.c
Signed-off-by: Jerone Young <jyoung5-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
diff --git a/libkvm/libkvm-x86.c b/libkvm/libkvm-x86.c
--- a/libkvm/libkvm-x86.c
+++ b/libkvm/libkvm-x86.c
@@ -348,3 +348,32 @@ void kvm_destroy_phys_mem(kvm_context_t
kvm_create_phys_mem(kvm, phys_start, 0, 0, 0);
}
+int kvm_create_memory_alias(kvm_context_t kvm,
+ uint64_t phys_addr,
+ uint64_t phys_start,
+ uint64_t len,
+ uint64_t target_phys)
+{
+ struct kvm_memory_alias alias = {
+ .flags = 0,
+ .guest_phys_addr = phys_start,
+ .memory_size = len,
+ .target_phys_addr = target_phys,
+ };
+ int fd = kvm->vm_fd;
+ int r;
+
+ alias.slot = get_slot(phys_addr);
+
+ r = ioctl(fd, KVM_SET_MEMORY_ALIAS, &alias);
+ if (r == -1)
+ return -errno;
+
+ return 0;
+}
+
+int kvm_destroy_memory_alias(kvm_context_t kvm, uint64_t phys_addr)
+{
+ return kvm_create_memory_alias(kvm, phys_addr, 0, 0, 0);
+}
+
diff --git a/libkvm/libkvm-x86.h b/libkvm/libkvm-x86.h
--- a/libkvm/libkvm-x86.h
+++ b/libkvm/libkvm-x86.h
@@ -11,4 +11,23 @@ void kvm_destroy_phys_mem(kvm_context_t,
void kvm_destroy_phys_mem(kvm_context_t, unsigned long phys_start,
unsigned long len);
+/*!
+ * \brief Create a memory alias
+ *
+ * Aliases a portion of physical memory to another portion. If the guest
+ * accesses the alias region, it will behave exactly as if it accessed
+ * the target memory.
+ */
+int kvm_create_memory_alias(kvm_context_t, uint64_t phys_addr,
+ uint64_t phys_start, uint64_t len,
+ uint64_t target_phys);
+
+/*!
+ * \brief Destroy a memory alias
+ *
+ * Removes an alias created with kvm_create_memory_alias().
+ */
+int kvm_destroy_memory_alias(kvm_context_t, uint64_t phys_addr);
+
+
#endif
diff --git a/libkvm/libkvm.c b/libkvm/libkvm.c
--- a/libkvm/libkvm.c
+++ b/libkvm/libkvm.c
@@ -445,35 +445,6 @@ int kvm_register_userspace_phys_mem(kvm_
#else
return -ENOSYS;
#endif
-}
-
-int kvm_create_memory_alias(kvm_context_t kvm,
- uint64_t phys_addr,
- uint64_t phys_start,
- uint64_t len,
- uint64_t target_phys)
-{
- struct kvm_memory_alias alias = {
- .flags = 0,
- .guest_phys_addr = phys_start,
- .memory_size = len,
- .target_phys_addr = target_phys,
- };
- int fd = kvm->vm_fd;
- int r;
-
- alias.slot = get_slot(phys_addr);
-
- r = ioctl(fd, KVM_SET_MEMORY_ALIAS, &alias);
- if (r == -1)
- return -errno;
-
- return 0;
-}
-
-int kvm_destroy_memory_alias(kvm_context_t kvm, uint64_t phys_addr)
-{
- return kvm_create_memory_alias(kvm, phys_addr, 0, 0, 0);
}
static int kvm_get_map(kvm_context_t kvm, int ioctl_num, int slot, void *buf)
diff --git a/libkvm/libkvm.h b/libkvm/libkvm.h
--- a/libkvm/libkvm.h
+++ b/libkvm/libkvm.h
@@ -427,24 +427,6 @@ int kvm_get_dirty_pages(kvm_context_t, u
/*!
- * \brief Create a memory alias
- *
- * Aliases a portion of physical memory to another portion. If the guest
- * accesses the alias region, it will behave exactly as if it accessed
- * the target memory.
- */
-int kvm_create_memory_alias(kvm_context_t, uint64_t phys_addr,
- uint64_t phys_start, uint64_t len,
- uint64_t target_phys);
-
-/*!
- * \brief Destroy a memory alias
- *
- * Removes an alias created with kvm_create_memory_alias().
- */
-int kvm_destroy_memory_alias(kvm_context_t, uint64_t phys_addr);
-
-/*!
* \brief Get a bitmap of guest ram pages which are allocated to the guest.
*
* \param kvm Pointer to the current kvm_context
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
next prev parent reply other threads:[~2007-11-02 18:24 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-02 18:24 [PATCH 00 of 19] [v3] Refactor libkvm Jerone Young
2007-11-02 18:24 ` [PATCH 01 of 19] Move kvm_context to kvmctl.h Jerone Young
2007-11-02 19:34 ` [kvm-ppc-devel] " Hollis Blanchard
2007-11-02 19:48 ` Jerone Young
2007-11-04 7:20 ` Avi Kivity
[not found] ` <472D72D8.5010704-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-05 20:24 ` Jerone Young
2007-11-04 7:22 ` Avi Kivity
2007-11-02 18:24 ` [PATCH 02 of 19] Make static slot & kvm_memory region funcions public Jerone Young
2007-11-02 19:36 ` [kvm-ppc-devel] " Hollis Blanchard
2007-11-02 18:24 ` [PATCH 03 of 19] Move fuction kvm_alloc_kernel_memory to libkvm-x86.c Jerone Young
2007-11-02 18:24 ` [PATCH 04 of 19] Move kvm_alloc_userspace_memory " Jerone Young
2007-11-02 18:24 ` [PATCH 05 of 19] Modify out arch specific code from kvm_create function Jerone Young
2007-11-02 18:24 ` [PATCH 06 of 19] Move kvm_create_kernel_phys_mem to libkvm-x86.c Jerone Young
2007-11-02 18:24 ` [PATCH 07 of 19] Move kvm_create_phys_mem " Jerone Young
2007-11-04 7:29 ` Avi Kivity
[not found] ` <472D74CB.8050602-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-05 21:15 ` Jerone Young
2007-11-06 1:06 ` [PATCH 07 of 19] Movekvm_create_phys_mem " Zhang, Xiantao
2007-11-06 9:10 ` [PATCH 07 of 19] Move kvm_create_phys_mem " Avi Kivity
2007-11-02 18:24 ` [PATCH 08 of 19] Move kvm_destroy_phys_mem " Jerone Young
2007-11-04 7:30 ` Avi Kivity
2007-11-02 18:24 ` Jerone Young [this message]
2007-11-02 18:24 ` [PATCH 10 of 19] Move kvm_get & kmv_set_lapci functions " Jerone Young
2007-11-02 18:25 ` [PATCH 11 of 19] Make functions in libkvm.c nonstatic Jerone Young
2007-11-04 7:32 ` Avi Kivity
2007-11-02 18:25 ` [PATCH 12 of 19] Move abi 10 functions to libkvm-x86.c Jerone Young
2007-11-02 18:25 ` [PATCH 13 of 19] Move msrs " Jerone Young
2007-11-02 18:25 ` [PATCH 14 of 19] Move print_seg & Move kvm_show_regs to kvmctl-x86.c Jerone Young
2007-11-02 18:25 ` [PATCH 15 of 19] Declare kvm_abi as a global variable in libkvm.h Jerone Young
2007-11-04 7:34 ` Avi Kivity
[not found] ` <472D75E9.6010409-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-05 22:10 ` Jerone Young
2007-11-06 9:11 ` Avi Kivity
2007-11-02 18:25 ` [PATCH 16 of 19] Move kvm_get_apic to libkvm-x86.c Jerone Young
2007-11-02 18:25 ` [PATCH 17 of 19] Move cr8 functions " Jerone Young
2007-11-02 19:46 ` [kvm-ppc-devel] " Hollis Blanchard
2007-11-02 18:25 ` [PATCH 18 of 19] Move kvm_setup_cpuid " Jerone Young
2007-11-02 19:47 ` [kvm-ppc-devel] " Hollis Blanchard
2007-11-02 18:25 ` [PATCH 19 of 19] Remove unsued inclusion of linux/kvm_parah.h in userspace libkvm.h Jerone Young
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=76218015a52046be4d77.1194027898@thinkpad \
--to=jyoung5-r/jw6+rmf7hqt0dzr+alfa@public.gmane.org \
--cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=kvm-ppc-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.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.