2017-12-01 08:00:51

by Christoffer Dall

[permalink] [raw]
Subject: Re: [PATCH] KVM: arm: Use PTR_ERR_OR_ZERO()

Hi Vasyl,

On Tue, Nov 28, 2017 at 11:48:17PM +0100, Vasyl Gomonovych wrote:
> Fix ptr_ret.cocci warnings:
> virt/kvm/arm/vgic/vgic-its.c:971:1-3: WARNING: PTR_ERR_OR_ZERO can be used
>
> Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR
>
> Generated by: scripts/coccinelle/api/ptr_ret.cocci

For new code, sure it would make sense to use this.

But why is it worth changing existing code to use PTR_ERR_OR_ZERO?

Thanks,
-Christoffer

>
> Signed-off-by: Vasyl Gomonovych <[email protected]>
> ---
> virt/kvm/arm/vgic/vgic-its.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c
> index 1f761a9991e7..28d85754320b 100644
> --- a/virt/kvm/arm/vgic/vgic-its.c
> +++ b/virt/kvm/arm/vgic/vgic-its.c
> @@ -1032,10 +1032,8 @@ static int vgic_its_cmd_handle_mapd(struct kvm *kvm, struct vgic_its *its,
>
> device = vgic_its_alloc_device(its, device_id, itt_addr,
> num_eventid_bits);
> - if (IS_ERR(device))
> - return PTR_ERR(device);
>
> - return 0;
> + return PTR_ERR_OR_ZERO(device);
> }
>
> /*
> --
> 1.9.1
>


2017-12-04 11:11:26

by Vasyl Gomonovych

[permalink] [raw]
Subject: Re: [PATCH] KVM: arm: Use PTR_ERR_OR_ZERO()

Hi Christoffer

It is just syntax sugar of course
and in mentioned function context it looks harmonically because it is
in the end of function return statement.
But in context of around source files it is looks not so harmonically because
existing code uses old approach.
And this old approach is only in one place here.
So it is just a try to fix the warning and may be force to use it in a
future changes.

Regards Vasyl

On Fri, Dec 1, 2017 at 9:00 AM, Christoffer Dall <[email protected]> wrote:
> Hi Vasyl,
>
> On Tue, Nov 28, 2017 at 11:48:17PM +0100, Vasyl Gomonovych wrote:
>> Fix ptr_ret.cocci warnings:
>> virt/kvm/arm/vgic/vgic-its.c:971:1-3: WARNING: PTR_ERR_OR_ZERO can be used
>>
>> Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR
>>
>> Generated by: scripts/coccinelle/api/ptr_ret.cocci
>
> For new code, sure it would make sense to use this.
>
> But why is it worth changing existing code to use PTR_ERR_OR_ZERO?
>
> Thanks,
> -Christoffer
>
>>
>> Signed-off-by: Vasyl Gomonovych <[email protected]>
>> ---
>> virt/kvm/arm/vgic/vgic-its.c | 4 +---
>> 1 file changed, 1 insertion(+), 3 deletions(-)
>>
>> diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c
>> index 1f761a9991e7..28d85754320b 100644
>> --- a/virt/kvm/arm/vgic/vgic-its.c
>> +++ b/virt/kvm/arm/vgic/vgic-its.c
>> @@ -1032,10 +1032,8 @@ static int vgic_its_cmd_handle_mapd(struct kvm *kvm, struct vgic_its *its,
>>
>> device = vgic_its_alloc_device(its, device_id, itt_addr,
>> num_eventid_bits);
>> - if (IS_ERR(device))
>> - return PTR_ERR(device);
>>
>> - return 0;
>> + return PTR_ERR_OR_ZERO(device);
>> }
>>
>> /*
>> --
>> 1.9.1
>>



--
Доброї вам пори дня.

2017-12-04 19:40:53

by Christoffer Dall

[permalink] [raw]
Subject: Re: [PATCH] KVM: arm: Use PTR_ERR_OR_ZERO()

On Mon, Dec 04, 2017 at 12:11:22PM +0100, Gomonovych, Vasyl wrote:
> Hi Christoffer
>
> It is just syntax sugar of course
> and in mentioned function context it looks harmonically because it is
> in the end of function return statement.
> But in context of around source files it is looks not so harmonically because
> existing code uses old approach.
> And this old approach is only in one place here.
> So it is just a try to fix the warning and may be force to use it in a
> future changes.

ok, thanks.
-Christoffer