This commit was first released with 4.20:
commit 22a7cdcae6a4a3c8974899e62851d270956f58ce Author: KarimAllah Ahmed karahmed@amazon.de Date: Sat Oct 20 23:42:59 2018 +0200
KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned
The spec only requires the posted interrupt descriptor address to be 64-bytes aligned (i.e. bits[0:5] == 0). Using page_address_valid also forces the address to be page aligned.
Only validate that the address does not cross the maximum physical address without enforcing a page alignment.
This commit applies clean to 4.19.
Without this commit, nested virtualization is broken in 4.19 for some use cases. In my case, a simple virt-install within the L1 guest failed to start with "KVM: entry failed, hardware error 0x7". I found another user with the same symptoms here:
https://bugzilla.redhat.com/show_bug.cgi?id=1657296
After applying the above patch to 4.19.18, virt-install within the L1 guest proceeded as expected.
Thank you!
On Mon, Jan 28, 2019 at 01:36:39AM -0500, Mark Mielke wrote:
This commit was first released with 4.20:
commit 22a7cdcae6a4a3c8974899e62851d270956f58ce Author: KarimAllah Ahmed karahmed@amazon.de Date: Sat Oct 20 23:42:59 2018 +0200
KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned The spec only requires the posted interrupt descriptor address to be 64-bytes aligned (i.e. bits[0:5] == 0). Using page_address_valid also forces the address to be page aligned. Only validate that the address does not cross the maximum physical address without enforcing a page alignment.
This commit applies clean to 4.19.
Without this commit, nested virtualization is broken in 4.19 for some use cases. In my case, a simple virt-install within the L1 guest failed to start with "KVM: entry failed, hardware error 0x7". I found another user with the same symptoms here:
https://bugzilla.redhat.com/show_bug.cgi?id=1657296
After applying the above patch to 4.19.18, virt-install within the L1 guest proceeded as expected.
Now queued up, thanks.
greg k-h
linux-stable-mirror@lists.linaro.org