ARM(64): KVM: add signed type cast for comparation
Subsystems (2)
PATCH 1/1 ARM(64): KVM: add signed type cast for comparation
'len' is 'unsigned long' which is never less than zero.
So need a related type cast for comparation.
The related warning (when building ARM64 with allmodconfig):
arch/arm64/kvm/../../../arch/arm/kvm/mmio.c:82:2: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
--- arch/arm/kvm/mmio.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
arch/arm/kvm/mmio.c +1 -1
@@ -79,7 +79,7 @@ static int decode_hsr(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa, } len =kvm_vcpu_dabt_get_as (vcpu); -if (unlikely (len <0 )) +if (unlikely ((long )len <0 ))return len; is_write =kvm_vcpu_dabt_iswrite (vcpu);
Signature · 1 line
1.7.7.6
Hello Maintainers:
Please help check the patch whether OK or not, when you have time.
Thanks.
Quoted 28 lines · Chen Gang
'len' is 'unsigned long' which is never less than zero.
So need a related type cast for comparation.
The related warning (when building ARM64 with allmodconfig):
arch/arm64/kvm/../../../arch/arm/kvm/mmio.c:82:2: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]Signed-off-by Chen Gang <[email protected]>--- arch/arm/kvm/mmio.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)arch/arm/kvm/mmio.c +1
-1@@ -79,7 +79,7 @@ static int decode_hsr(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa, } len =kvm_vcpu_dabt_get_as (vcpu); -if (unlikely (len <0 )) +if (unlikely ((long )len <0 ))return len; is_write =kvm_vcpu_dabt_iswrite (vcpu);
Signature · 1 line
Chen Gang
Quoted 8 lines · Chen Gang
'len' is 'unsigned long' which is never less than zero.
So need a related type cast for comparation.
The related warning (when building ARM64 with allmodconfig):
arch/arm64/kvm/../../../arch/arm/kvm/mmio.c:82:2: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
Hmmm, interesting, I don't get this error with my compiler.
Quoted 21 lines
Signed-off-by Chen Gang <[email protected]>--- arch/arm/kvm/mmio.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)arch/arm/kvm/mmio.c +1
-1@@ -79,7 +79,7 @@ static int decode_hsr(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa, } len =kvm_vcpu_dabt_get_as (vcpu); -if (unlikely (len <0 )) +if (unlikely ((long )len <0 ))return len; is_write =kvm_vcpu_dabt_iswrite (vcpu);Signature · 1 line
1.7.7.6
I think the proper fix is to declare len as an int instead. I'll queue that instead.
Thanks,
-Christoffer
Quoted 30 lines · Christoffer Dall
Quoted 8 lines · Chen Gang
'len' is 'unsigned long' which is never less than zero.
So need a related type cast for comparation.
The related warning (when building ARM64 with allmodconfig):
arch/arm64/kvm/../../../arch/arm/kvm/mmio.c:82:2: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]Hmmm, interesting, I don't get this error with my compiler.
Quoted 18 lines
Signed-off-by Chen Gang <[email protected]>--- arch/arm/kvm/mmio.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)arch/arm/kvm/mmio.c +1
-1@@ -79,7 +79,7 @@ static int decode_hsr(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa, } len =kvm_vcpu_dabt_get_as (vcpu); -if (unlikely (len <0 )) +if (unlikely ((long )len <0 ))return len;
Quoted 7 lines
Quoted 3 lines
arch/arm/kvm/mmio.c +0
-0is_write =kvm_vcpu_dabt_iswrite (vcpu);Signature · 1 line
1.7.7.6I think the proper fix is to declare len as an int instead. I'll queue that instead.
Yeah, it is fine to me (better than my original fix).
Thanks.
Signature · 1 line
Chen Gang