Re: [PATCH v2 4/5] KVM: s390: vsie: Always test the crycbd for NULL

2018-08-23 Thread Pierre Morel

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 
---
  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



Re: [PATCH v2 4/5] KVM: s390: vsie: Always test the crycbd for NULL

2018-08-23 Thread Pierre Morel

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 
---
  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



Re: [PATCH v2 4/5] KVM: s390: vsie: Always test the crycbd for NULL

2018-08-22 Thread David Hildenbrand
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)

Either we return or we check for !crycb_addr

> 
> Signed-off-by: Pierre Morel 
> ---
>  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 */
> 


-- 

Thanks,

David / dhildenb


Re: [PATCH v2 4/5] KVM: s390: vsie: Always test the crycbd for NULL

2018-08-22 Thread David Hildenbrand
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)

Either we return or we check for !crycb_addr

> 
> Signed-off-by: Pierre Morel 
> ---
>  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 */
> 


-- 

Thanks,

David / dhildenb