direct-io.hg

view tools/domain_builder/hypervisor_defs.h @ 204:0e45b167992d

bitkeeper revision 1.65 (3e536858YdNPGFSv3J35Fl8zAGLJjQ)

sched.h, xen_block.c, domain.c:
Now have per-domain IO completion queue.
author kaf24@labyrinth.cl.cam.ac.uk
date Wed Feb 19 11:19:52 2003 +0000 (2003-02-19)
parents 9713c0d10ee7
children
line source
1 /******************************************************************************
2 * hypervisor_defs.h
3 *
4 * This needs to be kept in sync with Xen's pagetable update interface!
5 *
6 * Copyright (c) 2002-2003, Keir Fraser & Boris Dragovic
7 */
9 /* taken from include/hypervisor-ifs/hypervisor-if.h */
10 typedef struct
11 {
12 /*
13 * PGREQ_XXX: specified in least-significant bits of 'ptr' field. All requests
14 * specify relevent PTE or PT address in 'ptr'. Normal requests specify update
15 * value in 'value'. Extended requests specify command in least 8 bits of
16 * 'value'.
17 */
18 unsigned long ptr, val; /* *ptr = val */
19 } page_update_request_t;
21 /* A normal page-table update request. */
22 #define PGREQ_NORMAL 0
23 #define PGREQ_MPT_UPDATE 1
24 /* An extended command. */
25 #define PGREQ_EXTENDED_COMMAND 2
26 /* Announce a new top-level page table. */
27 #define PGEXT_PIN_L1_TABLE 0
28 #define PGEXT_PIN_L2_TABLE 1
29 #define PGEXT_PIN_L3_TABLE 2
30 #define PGEXT_PIN_L4_TABLE 3
31 #define PGEXT_UNPIN_TABLE 4
32 #define PGEXT_NEW_BASEPTR 5
33 #define PGEXT_TLB_FLUSH 6
34 #define PGEXT_INVLPG 7
35 #define PGEXT_CMD_MASK 255
36 #define PGEXT_CMD_SHIFT 8