Hi julia,
I think it would be better to extract the assignment out of the if
clause. Then you'll get something like this:
memory = ...;
if (IS_ERR(memory)) {
....
}
so, to answer your question: no, it isn't necessary.
On Tue, Nov 28, 2017 at 1:56 PM, Julia Lawall <[email protected]> wrote:
> This is a false positive, but I wonder if it is really necessary to put
> the assignment in the conditional test expression.
>
> julia
>
> ---------- Forwarded message ----------
> Date: Tue, 28 Nov 2017 13:23:36 +0800
> From: kbuild test robot <[email protected]>
> To: [email protected]
> Cc: Julia Lawall <[email protected]>
> Subject: [PATCH] drm/nouveau/mmu: fix odd_ptr_err.cocci warnings
>
> CC: [email protected]
> CC: [email protected]
> TO: Ben Skeggs <[email protected]>
> CC: David Airlie <[email protected]>
> CC: [email protected]
> CC: [email protected]
> CC: [email protected]
>
> drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c:109:5-11: inconsistent IS_ERR
> and PTR_ERR on line 110.
> drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c:109:5-11: inconsistent IS_ERR
> and PTR_ERR on line 111.
>
> PTR_ERR should access the value just tested by IS_ERR
>
> Semantic patch information:
> There can be false positives in the patch case, where it is the call to
> IS_ERR that is wrong.
>
> Generated by: scripts/coccinelle/tests/odd_ptr_err.cocci
>
> Fixes: 920d2b5ef215 ("drm/nouveau/mmu: define user interfaces to mmu vmm
> opertaions")
> Signed-off-by: Fengguang Wu <[email protected]>
> ---
>
> Please take the patch only if it's a positive warning. Thanks!
>
> uvmm.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c
> @@ -107,8 +107,9 @@ nvkm_uvmm_mthd_map(struct nvkm_uvmm *uvm
> return ret;
>
> if (IS_ERR((memory = nvkm_umem_search(client, handle)))) {
> - VMM_DEBUG(vmm, "memory %016llx %ld\n", handle,
> PTR_ERR(memory));
> - return PTR_ERR(memory);
> + VMM_DEBUG(vmm, "memory %016llx %ld\n", handle,
> + PTR_ERR((memory = nvkm_umem_search(client,
> handle))));
> + return PTR_ERR((memory = nvkm_umem_search(client, handle)));
> }
>
> mutex_lock(&vmm->mutex);
> _______________________________________________
> Nouveau mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/nouveau
_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel