x86/svm Fixes and cleanup to svm_inject_event()
authorAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 28 May 2018 14:19:23 +0000 (14:19 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Tue, 17 Jul 2018 09:12:40 +0000 (10:12 +0100)
commit8dab867c81ede455009028a9a88edc4ff3b9da88
tree471048b7c323fbf9810bac2fb22eb57ab726da84
parentad43ce53ad2dab6673e750f8793560e6e460ae28
x86/svm Fixes and cleanup to svm_inject_event()

 * State adjustments (and debug tracing) for #DB/#BP/#PF should not be done
   for `int $n` instructions.  Updates to %cr2 occur even if the exception
   combines to #DF.
 * Don't opencode DR_STEP when updating %dr6.
 * Simplify the logic for calling svm_emul_swint_injection() as in the common
   case, every condition needs checking.
 * Fix comments which have become stale as code has moved between components.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
xen/arch/x86/hvm/svm/svm.c