Please sign in to comment.
x86: vtd: Ignore lower two bits when evaluating VTD_REQ_INV_WAIT
If the guest sets the wait request status address to the top of the page, we crossed the border to the next page and either wrote some bytes into a guest page that was previously mapped at page 2 in the temporary mapping range, or we crashed the hypervisor on a fault if nothing was mapped before. Fix this by masking out the two lowest bits of the status address which are actually reserved according to the Intel manual. Along that, replace the hard-coded shift value with the right symbolic constant. Fixes: 20b09b8 ("x86: Emulate interrupt remapping support to enable x2APIC usage") Signed-off-by: Jan Kiszka <email@example.com>
- Loading branch information...