mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
Make SVM IOIO intercept check all needed bits, by Bernhard Kauer.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3792 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
df01e0fc33
commit
b26177d7ec
1 changed files with 2 additions and 1 deletions
|
@ -4262,7 +4262,8 @@ int svm_check_intercept_param(uint32_t type, uint64_t param)
|
|||
uint64_t addr = ldq_phys(env->vm_vmcb + offsetof(struct vmcb, control.iopm_base_pa));
|
||||
uint16_t port = (uint16_t) (param >> 16);
|
||||
|
||||
if(ldub_phys(addr + port / 8) & (1 << (port % 8)))
|
||||
uint16_t mask = (1 << ((param >> 4) & 7)) - 1;
|
||||
if(lduw_phys(addr + port / 8) & (mask << (port & 7)))
|
||||
vmexit(type, param);
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue