]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
KVM: s390: Use guest address to mark guest page dirty
authorClaudio Imbrenda <imbrenda@linux.ibm.com>
Fri, 6 Feb 2026 14:35:51 +0000 (15:35 +0100)
committerClaudio Imbrenda <imbrenda@linux.ibm.com>
Tue, 10 Feb 2026 10:33:25 +0000 (11:33 +0100)
commit898885477e0fa23d2e42b65bcb7c250215ecac37
tree4e120d5421b44e84b734afe7b2b2fd043a4477a3
parentf7ab71f178d56447e5efb55b65436feb68662f8f
KVM: s390: Use guest address to mark guest page dirty

Stop using the userspace address to mark the guest page dirty.
mark_page_dirty() expects a guest frame number, but was being passed a
host virtual frame number. When slot == NULL, mark_page_dirty_in_slot()
does nothing and does not complain.

This means that in some circumstances the dirtiness of the guest page
might have been lost.

Fix by adding two fields in struct kvm_s390_adapter_int to keep the
guest addressses, and use those for mark_page_dirty().

Fixes: f65470661f36 ("KVM: s390/interrupt: do not pin adapter interrupt pages")
Reviewed-by: Steffen Eiden <seiden@linux.ibm.com>
Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Christoph Schlameuss <schlameuss@linux.ibm.com>
Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
arch/s390/kvm/interrupt.c
include/linux/kvm_host.h