diff options
author | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2003-10-29 14:43:22 +0000 |
---|---|---|
committer | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2003-10-29 14:43:22 +0000 |
commit | 35c6e9fc2e3692ab65f2f4cd6bca60ed46d1c26c (patch) | |
tree | c37aae587009c7c24effeedd8536a5d2099c8424 /extras/mini-os | |
parent | 042e1237bd43a3cfa6c9965fff70ca7f844a9541 (diff) | |
download | xen-35c6e9fc2e3692ab65f2f4cd6bca60ed46d1c26c.tar.gz xen-35c6e9fc2e3692ab65f2f4cd6bca60ed46d1c26c.tar.bz2 xen-35c6e9fc2e3692ab65f2f4cd6bca60ed46d1c26c.zip |
bitkeeper revision 1.536 (3f9fd20aglcfc5h0kB1oldciJuy2dQ)
Many files:
Modified blkdev and network interfaces to allow expedited flushing of pending request buffers.
Diffstat (limited to 'extras/mini-os')
-rw-r--r-- | extras/mini-os/h/hypervisor.h | 10 | ||||
-rw-r--r-- | extras/mini-os/head.S | 13 |
2 files changed, 12 insertions, 11 deletions
diff --git a/extras/mini-os/h/hypervisor.h b/extras/mini-os/h/hypervisor.h index 3519b6faff..23c39134f3 100644 --- a/extras/mini-os/h/hypervisor.h +++ b/extras/mini-os/h/hypervisor.h @@ -103,12 +103,13 @@ static inline int HYPERVISOR_set_callbacks( return ret; } -static inline int HYPERVISOR_net_update(void) +static inline int HYPERVISOR_net_io_op(unsigned int op, unsigned int idx) { int ret; __asm__ __volatile__ ( TRAP_INSTR - : "=a" (ret) : "0" (__HYPERVISOR_net_update) ); + : "=a" (ret) : "0" (__HYPERVISOR_net_io_op), + "b" (op), "c" (idx) ); return ret; } @@ -165,12 +166,13 @@ static inline int HYPERVISOR_network_op(void *network_op) return ret; } -static inline int HYPERVISOR_block_io_op(void) +static inline int HYPERVISOR_block_io_op(unsigned int op) { int ret; __asm__ __volatile__ ( TRAP_INSTR - : "=a" (ret) : "0" (__HYPERVISOR_block_io_op) ); + : "=a" (ret) : "0" (__HYPERVISOR_block_io_op), + "b" (op) ); return ret; } diff --git a/extras/mini-os/head.S b/extras/mini-os/head.S index 3f4e6670c3..d5cb19f574 100644 --- a/extras/mini-os/head.S +++ b/extras/mini-os/head.S @@ -1,9 +1,8 @@ #include <os.h> /* Offsets in start_info structure */ -#define SHARED_INFO 4 -#define MOD_START 12 -#define MOD_LEN 16 +#define MOD_START 4 +#define MOD_LEN 8 #define ENTRY(X) .globl X ; X : @@ -31,10 +30,10 @@ _start: /* Clear BSS first so that there are no surprises... */ 2: xorl %eax,%eax - movl $__bss_start,%edi - movl $_end,%ecx - subl %edi,%ecx - rep stosb + movl $__bss_start,%edi + movl $_end,%ecx + subl %edi,%ecx + rep stosb push %esi call start_kernel |