aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/lguest/lg.h
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2007-10-22 11:24:10 +1000
committerRusty Russell <rusty@rustcorp.com.au>2007-10-23 15:49:55 +1000
commit15045275c32bf6d15d32c2eca8157be9c0ba6e45 (patch)
tree32ef90c875b22cb1bbb94e38f557a690f1c0c6f8 /drivers/lguest/lg.h
parent0ca49ca946409f87a8cd0b14d5acb6dea58de6f3 (diff)
downloadkernel_samsung_crespo-15045275c32bf6d15d32c2eca8157be9c0ba6e45.zip
kernel_samsung_crespo-15045275c32bf6d15d32c2eca8157be9c0ba6e45.tar.gz
kernel_samsung_crespo-15045275c32bf6d15d32c2eca8157be9c0ba6e45.tar.bz2
Remove old lguest I/O infrrasructure.
This patch gets rid of the old lguest host I/O infrastructure and replaces it with a single hypercall "LHCALL_NOTIFY" which takes an address. The main change is the removal of io.c: that mainly did inter-guest I/O, which virtio doesn't yet support. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'drivers/lguest/lg.h')
-rw-r--r--drivers/lguest/lg.h27
1 files changed, 1 insertions, 26 deletions
diff --git a/drivers/lguest/lg.h b/drivers/lguest/lg.h
index e4845d7..4d45b70 100644
--- a/drivers/lguest/lg.h
+++ b/drivers/lguest/lg.h
@@ -5,7 +5,6 @@
#include <linux/types.h>
#include <linux/init.h>
#include <linux/stringify.h>
-#include <linux/futex.h>
#include <linux/lguest.h>
#include <linux/lguest_launcher.h>
#include <linux/wait.h>
@@ -17,17 +16,6 @@
void free_pagetables(void);
int init_pagetables(struct page **switcher_page, unsigned int pages);
-struct lguest_dma_info
-{
- struct list_head list;
- union futex_key key;
- unsigned long dmas;
- struct lguest *owner;
- u16 next_dma;
- u16 num_dmas;
- u8 interrupt; /* 0 when not registered */
-};
-
struct pgdir
{
unsigned long gpgdir;
@@ -90,15 +78,11 @@ struct lguest
struct task_struct *wake;
unsigned long noirq_start, noirq_end;
- int dma_is_pending;
- unsigned long pending_dma; /* struct lguest_dma */
- unsigned long pending_key; /* address they're sending to */
+ unsigned long pending_notify; /* pfn from LHCALL_NOTIFY */
unsigned int stack_pages;
u32 tsc_khz;
- struct lguest_dma_info dma[LGUEST_MAX_DMA];
-
/* Dead? */
const char *dead;
@@ -184,15 +168,6 @@ extern char start_switcher_text[], end_switcher_text[], switch_to_guest[];
int lguest_device_init(void);
void lguest_device_remove(void);
-/* io.c: */
-void lguest_io_init(void);
-int bind_dma(struct lguest *lg,
- unsigned long key, unsigned long udma, u16 numdmas, u8 interrupt);
-void send_dma(struct lguest *info, unsigned long key, unsigned long udma);
-void release_all_dma(struct lguest *lg);
-unsigned long get_dma_buffer(struct lguest *lg, unsigned long key,
- unsigned long *interrupt);
-
/* hypercalls.c: */
void do_hypercalls(struct lguest *lg);
void write_timestamp(struct lguest *lg);