Re: [PATCH V2] rcu: change function declaration to bool

From: Steven Rostedt
Date: Mon May 11 2015 - 11:28:41 EST


On Mon, 11 May 2015 17:10:59 +0200
Nicholas Mc Guire <hofrat@xxxxxxxxx> wrote:

> rcu_cpu_has_callbacks() is declared int but is actually returning bool and
> and as the function description states " * Return true if the specified
> CPU has any callback....", this probably should be a bool. All (3)
> call-sites currently treat it as bool so the declaration.
>
>
> Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
> ---
>
> V2: fixed up commit message and tool infos as requested by
> Josh Triplett <josh@xxxxxxxxxxxxxxxx>
>
> Type-checking coccinelle spatches are being used to locate type
> mismatches between function signatures and return values.
> ./kernel/rcu/tree.c:3538 WARNING: return of wrong type
> int != bool,
>
> Patch was compile tested with x86_64_defconfig (implies CONFIG_TREE_RCU=y)
>
> Patch is against 4.1-rc3 (localversion-next is -next-20150511)

I think what Josh was saying is that all the above except for the "V2"
should be above the signature. Everything between the "---" and the
patch gets tossed out when committed into git.

Giving credit to coccinelle and even what branch and config was used
for testing is something we want in the git change log history.

-- Steve

>
> kernel/rcu/tree.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
> index bcc5943..599550c 100644
> --- a/kernel/rcu/tree.c
> +++ b/kernel/rcu/tree.c
> @@ -3516,7 +3516,7 @@ static int rcu_pending(void)
> * non-NULL, store an indication of whether all callbacks are lazy.
> * (If there are no callbacks, all of them are deemed to be lazy.)
> */
> -static int __maybe_unused rcu_cpu_has_callbacks(bool *all_lazy)
> +static bool __maybe_unused rcu_cpu_has_callbacks(bool *all_lazy)
> {
> bool al = true;
> bool hc = false;

--
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/