Skip to content

Commit 79af02a

Browse files
committed
Merge tag 'kvm-s390-master-5.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into kvm-master
KVM: s390: Fix for destroy page ultravisor call - handle response code from older firmware - add uv.c to KVM: s390/s390 maintainer list
2 parents 054409a + 735931f commit 79af02a

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9655,6 +9655,7 @@ F: Documentation/virt/kvm/s390*
96559655
F: arch/s390/include/asm/gmap.h
96569656
F: arch/s390/include/asm/kvm*
96579657
F: arch/s390/include/uapi/asm/kvm*
9658+
F: arch/s390/kernel/uv.c
96589659
F: arch/s390/kvm/
96599660
F: arch/s390/mm/gmap.c
96609661
F: tools/testing/selftests/kvm/*/s390x/

arch/s390/kernel/uv.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,15 @@ int uv_destroy_page(unsigned long paddr)
129129
.paddr = paddr
130130
};
131131

132-
if (uv_call(0, (u64)&uvcb))
132+
if (uv_call(0, (u64)&uvcb)) {
133+
/*
134+
* Older firmware uses 107/d as an indication of a non secure
135+
* page. Let us emulate the newer variant (no-op).
136+
*/
137+
if (uvcb.header.rc == 0x107 && uvcb.header.rrc == 0xd)
138+
return 0;
133139
return -EINVAL;
140+
}
134141
return 0;
135142
}
136143

0 commit comments

Comments
 (0)