diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2008-03-26 19:00:57 +0000 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2008-03-26 19:00:57 +0000 |
commit | e42bc32ad5453faa9afe99628b4fad5f1bcc59e7 (patch) | |
tree | 81cf2376d54733e68743dfff1e8386e46c341b3d /xen/include/asm-x86/hvm/vcpu.h | |
parent | 0f085d76ff55638b68e68bd189fd858d24566211 (diff) | |
download | xen-e42bc32ad5453faa9afe99628b4fad5f1bcc59e7.tar.gz xen-e42bc32ad5453faa9afe99628b4fad5f1bcc59e7.tar.bz2 xen-e42bc32ad5453faa9afe99628b4fad5f1bcc59e7.zip |
x86_emulate: Clean up HVM emulated I/O handling.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/include/asm-x86/hvm/vcpu.h')
-rw-r--r-- | xen/include/asm-x86/hvm/vcpu.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/xen/include/asm-x86/hvm/vcpu.h b/xen/include/asm-x86/hvm/vcpu.h index 7439434b85..0c76551575 100644 --- a/xen/include/asm-x86/hvm/vcpu.h +++ b/xen/include/asm-x86/hvm/vcpu.h @@ -29,6 +29,14 @@ #define HVM_VCPU_INIT_SIPI_SIPI_STATE_NORM 0 #define HVM_VCPU_INIT_SIPI_SIPI_STATE_WAIT_SIPI 1 +enum hvm_io_state { + HVMIO_none = 0, + HVMIO_dispatched, + HVMIO_awaiting_completion, + HVMIO_handle_mmio_awaiting_completion, + HVMIO_completed +}; + struct hvm_vcpu { /* Guest control-register and EFER values, just as the guest sees them. */ unsigned long guest_cr[5]; @@ -70,9 +78,7 @@ struct hvm_vcpu { u8 cache_mode; /* I/O request in flight to device model. */ - bool_t mmio_in_progress; - bool_t io_in_progress; - bool_t io_completed; + enum hvm_io_state io_state; unsigned long io_data; }; |