2022-05-16 12:33:43

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH v3] workqueue: Wrap flush_workqueue() using a macro

On Mon, 2022-05-16 at 14:00 +0900, Tetsuo Handa wrote:
[]
> Changes in v3:
> Revert suggested change in v2, for kernel test robot <[email protected]> found
>
> warning: Function parameter or member 'flush_workqueue' not described in 'void'
> warning: expecting prototype for flush_workqueue(). Prototype was for void() instead
>
> when built with W=1 option.

Odd, perhaps that not a valid error message and is a defect
in gcc's parsing of function definitions.

> Changes in v2:
> Use "void (flush_workqueue)(struct workqueue_struct *wq)" and remove
> "#undef flush_workqueue", suggested by Joe Perches <[email protected]>.





2022-05-16 13:55:04

by Rasmus Villemoes

[permalink] [raw]
Subject: Re: [PATCH v3] workqueue: Wrap flush_workqueue() using a macro

On 16/05/2022 09.18, Joe Perches wrote:
> On Mon, 2022-05-16 at 14:00 +0900, Tetsuo Handa wrote:
> []
>> Changes in v3:
>> Revert suggested change in v2, for kernel test robot <[email protected]> found
>>
>> warning: Function parameter or member 'flush_workqueue' not described in 'void'
>> warning: expecting prototype for flush_workqueue(). Prototype was for void() instead
>>
>> when built with W=1 option.
>
> Odd, perhaps that not a valid error message and is a defect
> in gcc's parsing of function definitions.

Nah, gcc isn't buggy in such a fundamental part of parsing C. It's not a
warning from gcc, nor from sparse (or smatch).

It's from the perl script scripts/kernel-doc .

Rasmus