From: Avi Kivity <avi@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>,
Marcelo Tosatti <mtosatti@redhat.com>,
kvm@vger.kernel.org
Subject: [PATCH v2 5/8] kvm: Add stubs for msix support code
Date: Sun, 10 Oct 2010 16:42:04 +0200 [thread overview]
Message-ID: <1286721727-31447-6-git-send-email-avi@redhat.com> (raw)
In-Reply-To: <1286721727-31447-1-git-send-email-avi@redhat.com>
To allow msix to build without kvm support, add stubs for these functions.
Move the declarations to kvm.h so they are accessible when kvm support is not
built.
Signed-off-by: Avi Kivity <avi@redhat.com>
---
kvm-stub.c | 35 +++++++++++++++++++++++++++++++++++
kvm.h | 13 +++++++++++++
qemu-kvm.h | 34 ----------------------------------
3 files changed, 48 insertions(+), 34 deletions(-)
diff --git a/kvm-stub.c b/kvm-stub.c
index d45f9fa..3c2deec 100644
--- a/kvm-stub.c
+++ b/kvm-stub.c
@@ -141,3 +141,38 @@ int kvm_set_ioeventfd_mmio_long(int fd, uint32_t adr, uint32_t val, bool assign)
{
return -ENOSYS;
}
+
+int kvm_has_gsi_routing(void)
+{
+ return 0;
+}
+
+int kvm_get_irq_route_gsi(void)
+{
+ return -ENOSYS;
+}
+
+int kvm_add_msix(uint32_t gsi, uint32_t addr_lo,
+ uint32_t addr_hi, uint32_t data)
+{
+ return -ENOSYS;
+}
+
+int kvm_del_msix(uint32_t gsi, uint32_t addr_lo,
+ uint32_t addr_hi, uint32_t data)
+{
+ return -ENOSYS;
+}
+
+int kvm_update_msix(uint32_t old_gsi, uint32_t old_addr_lo,
+ uint32_t old_addr_hi, uint32_t old_data,
+ uint32_t new_gsi, uint32_t new_addr_lo,
+ uint32_t new_addr_hi, uint32_t new_data)
+{
+ return -ENOSYS;
+}
+
+int kvm_commit_irq_routes(void)
+{
+ return -ENOSYS;
+}
diff --git a/kvm.h b/kvm.h
index d728836..2f12851 100644
--- a/kvm.h
+++ b/kvm.h
@@ -198,4 +198,17 @@ int kvm_set_ioeventfd_pio_word(int fd, uint16_t adr, uint16_t val, bool assign);
int kvm_physical_memory_addr_from_ram(KVMState *s, ram_addr_t ram_addr,
target_phys_addr_t *phys_addr);
+
+int kvm_has_gsi_routing(void);
+int kvm_get_irq_route_gsi(void);
+int kvm_add_msix(uint32_t gsi, uint32_t addr_lo,
+ uint32_t addr_hi, uint32_t data);
+int kvm_del_msix(uint32_t gsi, uint32_t addr_lo,
+ uint32_t addr_hi, uint32_t data);
+int kvm_update_msix(uint32_t old_gsi, uint32_t old_addr_lo,
+ uint32_t old_addr_hi, uint32_t old_data,
+ uint32_t new_gsi, uint32_t new_addr_lo,
+ uint32_t new_addr_hi, uint32_t new_data);
+int kvm_commit_irq_routes(void);
+
#endif
diff --git a/qemu-kvm.h b/qemu-kvm.h
index 25f71db..9c08ab4 100644
--- a/qemu-kvm.h
+++ b/qemu-kvm.h
@@ -661,14 +661,6 @@ int kvm_deassign_pci_device(kvm_context_t kvm,
#endif
/*!
- * \brief Checks whether the generic irq routing capability is present
- *
- * Checks whether kvm can reroute interrupts among the various interrupt
- * controllers.
- */
-int kvm_has_gsi_routing(void);
-
-/*!
* \brief Determines the number of gsis that can be routed
*
* Returns the number of distinct gsis that can be routed by kvm. This is
@@ -704,15 +696,6 @@ int kvm_add_irq_route(int gsi, int irqchip, int pin);
*/
int kvm_del_irq_route(int gsi, int irqchip, int pin);
-int kvm_add_msix(uint32_t gsi, uint32_t addr_lo,
- uint32_t addr_hi, uint32_t data);
-int kvm_del_msix(uint32_t gsi, uint32_t addr_lo,
- uint32_t addr_hi, uint32_t data);
-int kvm_update_msix(uint32_t old_gsi, uint32_t old_addr_lo,
- uint32_t old_addr_hi, uint32_t old_data,
- uint32_t new_gsi, uint32_t new_addr_lo,
- uint32_t new_addr_hi, uint32_t new_data);
-
struct kvm_irq_routing_entry;
/*!
* \brief Adds a routing entry to the temporary irq routing table
@@ -740,23 +723,6 @@ int kvm_del_routing_entry(struct kvm_irq_routing_entry *entry);
int kvm_update_routing_entry(struct kvm_irq_routing_entry *entry,
struct kvm_irq_routing_entry *newentry);
-/*!
- * \brief Commit the temporary irq routing table
- *
- * Commit the temporary irq routing table to the running VM.
- *
- * \param kvm Pointer to the current kvm_context
- */
-int kvm_commit_irq_routes(void);
-
-/*!
- * \brief Get unused GSI number for irq routing table
- *
- * Get unused GSI number for irq routing table
- *
- * \param kvm Pointer to the current kvm_context
- */
-int kvm_get_irq_route_gsi(void);
/*!
* \brief Create a file descriptor for injecting interrupts
--
1.7.3.1
next prev parent reply other threads:[~2010-10-10 14:42 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-10 14:41 [PATCH v2 0/8] Move msix.o back to target independent files list Avi Kivity
2010-10-10 14:42 ` [PATCH v2 1/8] msix: avoid leaking kvm data on init failure Avi Kivity
2010-10-10 14:42 ` [PATCH v2 2/8] kvm: drop kvm_context parameter from msix-related kvm functions Avi Kivity
2010-10-10 14:42 ` [PATCH v2 3/8] Avoid using kvm_irq_routing_entry in PCIDevice Avi Kivity
2010-10-10 14:42 ` [PATCH v2 4/8] Avoid use of kvm_irq_routing_entry in hw/msix.c Avi Kivity
2010-10-10 14:42 ` Avi Kivity [this message]
2010-10-10 14:42 ` [PATCH v2 6/8] kvm: allow kvm.h to be included from target independent files Avi Kivity
2010-10-10 14:42 ` [PATCH v2 7/8] msix: remove CONFIG_KVM depedency Avi Kivity
2010-10-10 14:42 ` [PATCH v2 8/8] Move msix.o build back to Makefile.objs Avi Kivity
2010-10-10 15:02 ` [PATCH v2 0/8] Move msix.o back to target independent files list Michael S. Tsirkin
2010-10-20 10:18 ` Michael S. Tsirkin
2010-10-20 10:38 ` 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=1286721727-31447-6-git-send-email-avi@redhat.com \
--to=avi@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=mst@redhat.com \
--cc=mtosatti@redhat.com \
/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