Re: [PATCH] nfsd: sign conversion obscuring errors in nfsd_set_posix_acl()

From: Neil Brown
Date: Mon May 15 2006 - 23:07:03 EST


On Monday May 15, fmalita@xxxxxxxxx wrote:
> Assigning the result of posix_acl_to_xattr() to an unsigned data type
> (size/size_t) obscures possible errors.
>
> Coverity CID: 1206.

Acked-by: NeilBrown <neilb@xxxxxxx>

Thanks.
This is non-critical as posix_acl_to_xattr won't actually return an
error here (with current code anyway), but it is certainly worth
fixing.

The fact that posix_acl_to_xattr takes a 'size_t' for size and returns a
int is a bit bothersome... oh well.

NeilBrown

>
> Signed-off-by: Florin Malita <fmalita@xxxxxxxxx>
> ---
>
> diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
> index 6aa92d0..1d65f13 100644
> --- a/fs/nfsd/vfs.c
> +++ b/fs/nfsd/vfs.c
> @@ -1922,11 +1922,10 @@ nfsd_set_posix_acl(struct svc_fh *fhp, i
> value = kmalloc(size, GFP_KERNEL);
> if (!value)
> return -ENOMEM;
> - size = posix_acl_to_xattr(acl, value, size);
> - if (size < 0) {
> - error = size;
> + error = posix_acl_to_xattr(acl, value, size);
> + if (error < 0)
> goto getout;
> - }
> + size = error;
> } else
> size = 0;
>
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/