summaryrefslogtreecommitdiffstats
path: root/drivers/lguest/core.c
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/core.c
parent0ca49ca946409f87a8cd0b14d5acb6dea58de6f3 (diff)
downloadlinux-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/core.c')
-rw-r--r--drivers/lguest/core.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/lguest/core.c b/drivers/lguest/core.c
index 41b26e592d38..3aec29ec7715 100644
--- a/drivers/lguest/core.c
+++ b/drivers/lguest/core.c
@@ -202,13 +202,12 @@ int run_guest(struct lguest *lg, unsigned long __user *user)
if (lg->hcall)
do_hypercalls(lg);
- /* It's possible the Guest did a SEND_DMA hypercall to the
+ /* It's possible the Guest did a NOTIFY hypercall to the
* Launcher, in which case we return from the read() now. */
- if (lg->dma_is_pending) {
- if (put_user(lg->pending_dma, user) ||
- put_user(lg->pending_key, user+1))
+ if (lg->pending_notify) {
+ if (put_user(lg->pending_notify, user))
return -EFAULT;
- return sizeof(unsigned long)*2;
+ return sizeof(lg->pending_notify);
}
/* Check for signals */
@@ -288,9 +287,6 @@ static int __init init(void)
if (err)
goto unmap;
- /* The I/O subsystem needs some things initialized. */
- lguest_io_init();
-
/* We might need to reserve an interrupt vector. */
err = init_interrupts();
if (err)