Re: [PATCH] kcm: fix variable type

From: Andrzej Hajda
Date: Mon Mar 14 2016 - 02:46:19 EST

On 03/11/2016 05:44 PM, David Miller wrote:
> From: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
> Date: Fri, 11 Mar 2016 07:51:15 +0100
>> Function skb_splice_bits can return negative values, its result should
>> be assigned to signed variable to allow correct error checking.
>> The problem has been detected using patch
>> scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci.
>> Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
> Since skb_splice_bits() returns an 'int', that would be a more appropriate
> type to use here.
> Thank you.
On the other side kcm_splice_read use this local var as return variable,
and the return type is ssize_t.

Digging deeper it looks like:
ssize_t kcm_splice_read(...) returns result of
int skb_splice_bits(...) which returns result of
ssize_t splice_cb(...) callback.

It looks code is somehow inconsistent, but maybe there are other reasons
which I am not aware of.