On 22/08/2018 19:07, David Hildenbrand wrote:
On 22.08.2018 18:51, Pierre Morel wrote:
BUG: the crycbd must be tested for null even if
not crossing a page boundary (which will never
occur in this case anyway).
I don't see the BUG. Can you elaborate? (maybe it is too late for me)
No it was too late for me :)
The BUG was by me, my brain was fooled by the "else"
there is not problem there.
CRCBD is always tested.
Sorry.
Either we return or we check for !crycb_addr
Signed-off-by: Pierre Morel <pmorel@xxxxxxxxxxxxx>
---
arch/s390/kvm/vsie.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c
index 0b12916..7ee4329 100644
--- a/arch/s390/kvm/vsie.c
+++ b/arch/s390/kvm/vsie.c
@@ -172,7 +172,7 @@ static int shadow_crycb(struct kvm_vcpu *vcpu, struct vsie_page *vsie_page)
if ((crycb_addr & PAGE_MASK) != ((crycb_addr + 128) & PAGE_MASK))
return set_validity_icpt(scb_s, 0x003CU);
- else if (!crycb_addr)
+ if (!crycb_addr)
return set_validity_icpt(scb_s, 0x0039U);
/* copy only the wrapping keys */
--
Pierre Morel
Linux/KVM/QEMU in Böblingen - Germany