Re: checkpatch false positon on EXPORT_SYMBOL

From: Joe Perches
Date: Thu Mar 31 2016 - 15:21:44 EST


On Thu, 2016-03-31 at 08:01 -0700, Daniel Walker wrote:
> The below looks like normal code but the last export symbol gets the 
> warning,
>
>
> WARNING:EXPORT_SYMBOL: EXPORT_SYMBOL(foo); should immediately follw its 
> function/variable
> #16: FILE: kernel/acct.c:70:
> +EXPORT_SYMBOL(test_export);    /* Error ! */
>
> It seems to have to do with the comments at the end of the line. The 
> first two examples don't have warnings because I removed the comments on 
> different lines. comments on the variable and export symbol lines gets 
> the error tho.

That looks like a false positive I'll leave for Andy.

$ cat ~/export_symbol.c
int test_export_no_comment;
EXPORT_SYMBOL(test_export_no_comment);
int test_export_comment_int; /* comment int */
EXPORT_SYMBOL(test_export_int);
int test_export_comment_symbol;
EXPORT_SYMBOL(test_export_symbol); /* comment symbol */
int test_export_both; /* comment both 1 */
EXPORT_SYMBOL(test_export_both); /* comment both 2 */
$

Something's a bit off with the $stat variable:

test_export_int doesn't match the EXPORT_SYMBOL test.
test_export_symbol and test_export_both get warnings.