diff options
| author | Marcelo Tosatti <mtosatti@redhat.com> | 2010-02-13 13:10:26 -0500 |
|---|---|---|
| committer | Avi Kivity <avi@redhat.com> | 2010-04-25 05:26:32 -0400 |
| commit | 679613442f84702c06a80f2320cb8a50089200bc (patch) | |
| tree | 5dc5571f1b9a789c9e7d8082c3ffecea3dfe176d /Documentation/kvm | |
| parent | 1ef6ce7a340f9ed139a73147ff9cf7ad56889414 (diff) | |
KVM: add doc note about PIO/MMIO completion API
Document that partially emulated instructions leave the guest state
inconsistent, and that the kernel will complete operations before
checking for pending signals.
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'Documentation/kvm')
| -rw-r--r-- | Documentation/kvm/api.txt | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Documentation/kvm/api.txt b/Documentation/kvm/api.txt index c6416a39816..beb444a9501 100644 --- a/Documentation/kvm/api.txt +++ b/Documentation/kvm/api.txt | |||
| @@ -820,6 +820,13 @@ executed a memory-mapped I/O instruction which could not be satisfied | |||
| 820 | by kvm. The 'data' member contains the written data if 'is_write' is | 820 | by kvm. The 'data' member contains the written data if 'is_write' is |
| 821 | true, and should be filled by application code otherwise. | 821 | true, and should be filled by application code otherwise. |
| 822 | 822 | ||
| 823 | NOTE: For KVM_EXIT_IO and KVM_EXIT_MMIO, the corresponding operations | ||
| 824 | are complete (and guest state is consistent) only after userspace has | ||
| 825 | re-entered the kernel with KVM_RUN. The kernel side will first finish | ||
| 826 | incomplete operations and then check for pending signals. Userspace | ||
| 827 | can re-enter the guest with an unmasked signal pending to complete | ||
| 828 | pending operations. | ||
| 829 | |||
| 823 | /* KVM_EXIT_HYPERCALL */ | 830 | /* KVM_EXIT_HYPERCALL */ |
| 824 | struct { | 831 | struct { |
| 825 | __u64 nr; | 832 | __u64 nr; |
