diff options
author | sos22@labyrinth.cl.cam.ac.uk <sos22@labyrinth.cl.cam.ac.uk> | 2003-07-08 11:23:42 +0000 |
---|---|---|
committer | sos22@labyrinth.cl.cam.ac.uk <sos22@labyrinth.cl.cam.ac.uk> | 2003-07-08 11:23:42 +0000 |
commit | 5996efc5ac844bada882821dcffc0d546480e1d0 (patch) | |
tree | 6806271e47a0a8fdd2c481497d90cba54b3eaf74 /tools | |
parent | dff6ba1a0dd1440851e1d708b33a8f666ea283b9 (diff) | |
parent | f69a742521453e1a497470fe7a216b6bb5faef11 (diff) | |
download | xen-5996efc5ac844bada882821dcffc0d546480e1d0.tar.gz xen-5996efc5ac844bada882821dcffc0d546480e1d0.tar.bz2 xen-5996efc5ac844bada882821dcffc0d546480e1d0.zip |
bitkeeper revision 1.295 (3f0aa9beS_4RaA-JxGiBF8BRtuik6Q)
Merge labyrinth.cl.cam.ac.uk:/auto/groups/xeno/users/sos22/xeno.bk
into labyrinth.cl.cam.ac.uk:/auto/groups/xeno/users/sos22/tmp/xeno.bk
Diffstat (limited to 'tools')
-rw-r--r-- | tools/internal/Makefile | 31 | ||||
-rw-r--r-- | tools/internal/hypervisor_defs.h | 36 | ||||
-rw-r--r-- | tools/internal/physdev.h | 27 | ||||
-rw-r--r-- | tools/internal/xi_build.c | 3 | ||||
-rw-r--r-- | tools/internal/xi_create.c | 1 | ||||
-rw-r--r-- | tools/internal/xi_phys_grant.c | 8 | ||||
-rw-r--r-- | tools/internal/xi_phys_probe.c | 7 | ||||
-rw-r--r-- | tools/internal/xi_phys_revoke.c | 5 | ||||
-rw-r--r-- | tools/internal/xi_start.c | 5 | ||||
-rw-r--r-- | tools/internal/xi_stop.c | 1 |
10 files changed, 34 insertions, 90 deletions
diff --git a/tools/internal/Makefile b/tools/internal/Makefile index 6015becf3b..5f33fdf4cd 100644 --- a/tools/internal/Makefile +++ b/tools/internal/Makefile @@ -1,4 +1,5 @@ CC = gcc +CFLAGS = -Wall -I../../xen/include XI_CREATE = xi_create XI_START = xi_start XI_STOP = xi_stop @@ -19,29 +20,29 @@ all: $(XI_CREATE).o $(XI_START).o $(XI_STOP).o $(XI_DESTROY).o $(XI_BUILD).o \ $(CC) -o $(XI_PHYS_REVOKE) $(XI_PHYS_REVOKE).o $(CC) -o $(XI_PHYS_PROBE) $(XI_PHYS_PROBE).o -$(XI_CREATE).o: $(XI_CREATE).c dom0_defs.h dom0_ops.h hypervisor_defs.h mem_defs.h - $(CC) -c $(XI_CREATE).c +$(XI_CREATE).o: $(XI_CREATE).c dom0_defs.h dom0_ops.h mem_defs.h + $(CC) $(CFLAGS) -c $(XI_CREATE).c -internal_domain_build.o: internal_domain_build.c dom0_defs.h dom0_ops.h hypervisor_defs.h mem_defs.h - $(CC) -c internal_domain_build.c +internal_domain_build.o: internal_domain_build.c dom0_defs.h dom0_ops.h mem_defs.h + $(CC) $(CFLAGS) -c internal_domain_build.c -$(XI_START).o: $(XI_START).c dom0_defs.h dom0_ops.h hypervisor_defs.h mem_defs.h - $(CC) -c $(XI_START).c +$(XI_START).o: $(XI_START).c dom0_defs.h dom0_ops.h mem_defs.h + $(CC) $(CFLAGS) -c $(XI_START).c -$(XI_STOP).o: $(XI_STOP).c dom0_defs.h dom0_ops.h hypervisor_defs.h mem_defs.h - $(CC) -c $(XI_STOP).c +$(XI_STOP).o: $(XI_STOP).c dom0_defs.h dom0_ops.h mem_defs.h + $(CC) $(CFLAGS) -c $(XI_STOP).c $(XI_DESTROY).o: $(XI_DESTROY).c dom0_ops.h dom0_defs.h - $(CC) -c $(XI_DESTROY).c + $(CC) $(CFLAGS) -c $(XI_DESTROY).c -$(XI_PHYS_GRANT).o: $(XI_PHYS_GRANT).c physdev.h - $(CC) -c $(XI_PHYS_GRANT).c +$(XI_PHYS_GRANT).o: $(XI_PHYS_GRANT).c + $(CC) $(CFLAGS) -c $(XI_PHYS_GRANT).c -$(XI_PHYS_REVOKE).o: $(XI_PHYS_REVOKE).c physdev.h - $(CC) -c $(XI_PHYS_REVOKE).c +$(XI_PHYS_REVOKE).o: $(XI_PHYS_REVOKE).c + $(CC) $(CFLAGS) -c $(XI_PHYS_REVOKE).c -$(XI_PHYS_PROBE).o: $(XI_PHYS_PROBE).c physdev.h - $(CC) -c $(XI_PHYS_PROBE).c +$(XI_PHYS_PROBE).o: $(XI_PHYS_PROBE).c + $(CC) $(CFLAGS) -c $(XI_PHYS_PROBE).c install: all cp -a xi_list xi_vifinit xi_helper $(XI_CREATE) $(XI_BUILD) $(XI_START) $(XI_STOP) $(XI_DESTROY) $(XI_PHYSDEV_GRANT) $(XI_PHYS_REVOKE) $(XI_PHYS_PROBE).o../../../install/bin diff --git a/tools/internal/hypervisor_defs.h b/tools/internal/hypervisor_defs.h deleted file mode 100644 index 7d0aba03d7..0000000000 --- a/tools/internal/hypervisor_defs.h +++ /dev/null @@ -1,36 +0,0 @@ -/****************************************************************************** - * hypervisor_defs.h - * - * This needs to be kept in sync with Xen's pagetable update interface! - * - * Copyright (c) 2002-2003, Keir Fraser & Boris Dragovic - */ - -/* taken from include/hypervisor-ifs/hypervisor-if.h */ -typedef struct -{ -/* - * PGREQ_XXX: specified in least-significant bits of 'ptr' field. All requests - * specify relevent PTE or PT address in 'ptr'. Normal requests specify update - * value in 'value'. Extended requests specify command in least 8 bits of - * 'value'. - */ - unsigned long ptr, val; /* *ptr = val */ -} page_update_request_t; - -/* A normal page-table update request. */ -#define PGREQ_NORMAL 0 -#define PGREQ_MPT_UPDATE 1 -/* An extended command. */ -#define PGREQ_EXTENDED_COMMAND 2 -/* Announce a new top-level page table. */ -#define PGEXT_PIN_L1_TABLE 0 -#define PGEXT_PIN_L2_TABLE 1 -#define PGEXT_PIN_L3_TABLE 2 -#define PGEXT_PIN_L4_TABLE 3 -#define PGEXT_UNPIN_TABLE 4 -#define PGEXT_NEW_BASEPTR 5 -#define PGEXT_TLB_FLUSH 6 -#define PGEXT_INVLPG 7 -#define PGEXT_CMD_MASK 255 -#define PGEXT_CMD_SHIFT 8 diff --git a/tools/internal/physdev.h b/tools/internal/physdev.h deleted file mode 100644 index 5a868fe4c7..0000000000 --- a/tools/internal/physdev.h +++ /dev/null @@ -1,27 +0,0 @@ -#define XEN_BLOCK_PHYSDEV_GRANT 10 /* grant access to range of disk blocks */ -#define XEN_BLOCK_PHYSDEV_PROBE 11 /* probe for a domain's physdev - accesses */ - -#define PHYSDISK_MODE_R 1 -#define PHYSDISK_MODE_W 2 -typedef struct xp_disk -{ - int mode; /* PHYSDISK_MODEs or 0 for revoke. */ - int domain; - unsigned short device; - unsigned long start_sect; - unsigned long n_sectors; -} xp_disk_t; - -#define PHYSDISK_MAX_ACES_PER_REQUEST 254 -typedef struct { - int n_aces; - int domain; - int start_ind; - struct { - unsigned short device; - unsigned long start_sect; - unsigned long n_sectors; - unsigned mode; - } entries[PHYSDISK_MAX_ACES_PER_REQUEST]; -} physdisk_probebuf_t; diff --git a/tools/internal/xi_build.c b/tools/internal/xi_build.c index 4f9ef136ba..1457281f74 100644 --- a/tools/internal/xi_build.c +++ b/tools/internal/xi_build.c @@ -14,7 +14,8 @@ #include <stdlib.h> #include <sys/ioctl.h> -#include "hypervisor_defs.h" +#include "asm-i386/types.h" +#include "hypervisor-ifs/hypervisor-if.h" #include "dom0_ops.h" #include "dom0_defs.h" #include "mem_defs.h" diff --git a/tools/internal/xi_create.c b/tools/internal/xi_create.c index 7ebf484e66..7c3010aff2 100644 --- a/tools/internal/xi_create.c +++ b/tools/internal/xi_create.c @@ -16,7 +16,6 @@ #include <errno.h> #include <string.h> -#include "hypervisor_defs.h" #include "dom0_ops.h" #include "dom0_defs.h" #include "mem_defs.h" diff --git a/tools/internal/xi_phys_grant.c b/tools/internal/xi_phys_grant.c index 1923a95751..58c00ed882 100644 --- a/tools/internal/xi_phys_grant.c +++ b/tools/internal/xi_phys_grant.c @@ -1,9 +1,12 @@ +#define _GNU_SOURCE #include <unistd.h> #include <stdio.h> #include <errno.h> #include <sys/fcntl.h> +#include <string.h> +#include <stdlib.h> -#include "physdev.h" +#include "hypervisor-ifs/block.h" int main(int argc, char *argv[]) { @@ -26,9 +29,10 @@ int main(int argc, char *argv[]) else if (argv[1][1] == 'w') buf.mode |= 2; - buf.device = atol(argv[3]) + atol(argv[6]); + buf.device = atol(argv[3]); buf.start_sect = atol(argv[4]); buf.n_sectors = atol(argv[5]); + buf.partition = atol(argv[6]); asprintf(&strbuf, "/proc/xeno/dom%s/phd", argv[2]); fd = open(strbuf, O_WRONLY); diff --git a/tools/internal/xi_phys_probe.c b/tools/internal/xi_phys_probe.c index aa260145c7..e38bb1634b 100644 --- a/tools/internal/xi_phys_probe.c +++ b/tools/internal/xi_phys_probe.c @@ -1,10 +1,12 @@ +#define _GNU_SOURCE #include <stdio.h> #include <sys/fcntl.h> #include <errno.h> #include <unistd.h> #include <string.h> +#include <stdlib.h> -#include "physdev.h" +#include "hypervisor-ifs/block.h" int main(int argc, char *argv[]) { @@ -37,7 +39,8 @@ int main(int argc, char *argv[]) for (x = 0; x < buf.n_aces; x++) { char read = ( buf.entries[x].mode & 1 ? 'r' : ' ' ); char write = ( buf.entries[x].mode & 2 ? 'w' : ' ' ); - printf("%x %x %x %c%c\n", buf.entries[x].device, + printf("%x %x %lx %lx %c%c\n", buf.entries[x].device, + buf.entries[x].partition, buf.entries[x].start_sect, buf.entries[x].n_sectors, read, diff --git a/tools/internal/xi_phys_revoke.c b/tools/internal/xi_phys_revoke.c index d4bb083b16..2bcfacb591 100644 --- a/tools/internal/xi_phys_revoke.c +++ b/tools/internal/xi_phys_revoke.c @@ -1,9 +1,12 @@ +#define _GNU_SOURCE #include <unistd.h> #include <errno.h> #include <stdio.h> #include <sys/fcntl.h> +#include <string.h> +#include <stdlib.h> -#include "physdev.h" +#include "hypervisor-ifs/block.h" int main(int argc, char *argv[]) { diff --git a/tools/internal/xi_start.c b/tools/internal/xi_start.c index 51d7ef3f0d..c6826c4874 100644 --- a/tools/internal/xi_start.c +++ b/tools/internal/xi_start.c @@ -6,8 +6,8 @@ #include <sys/types.h> #include <sys/stat.h> #include <stdlib.h> +#include <string.h> -#include "hypervisor_defs.h" #include "dom0_ops.h" #include "dom0_defs.h" #include "mem_defs.h" @@ -32,12 +32,9 @@ static void PERROR (char *message) static int start_domain(int id) { - dom0_newdomain_t * dom_data; char cmd_path[MAX_PATH]; - char dom_id_path[MAX_PATH]; dom0_op_t dop; int cmd_fd; - int id_fd; /* Set up the DOM0_STARTDOMAIN command */ dop.cmd = DOM0_STARTDOMAIN; diff --git a/tools/internal/xi_stop.c b/tools/internal/xi_stop.c index e243aa703e..6f2437ca14 100644 --- a/tools/internal/xi_stop.c +++ b/tools/internal/xi_stop.c @@ -7,7 +7,6 @@ #include <sys/stat.h> #include <stdlib.h> -#include "hypervisor_defs.h" #include "dom0_ops.h" #include "dom0_defs.h" #include "mem_defs.h" |