lkml.org 
[lkml]   [2012]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRE: [PATCH] staging: comedi: ni_mio_common.c: local functions should be static
On Wednesday, June 06, 2012 3:17 AM, Ian Abbott wrote:
> On 2012-06-05 19:20, H Hartley Sweeten wrote:
>> Local functions should be marked static to prevent them from
>> being exposed globally.
>>
>> This quiets the following sparse warnings:
>>
>> warning: symbol 'ni_release_gpct_mite_channel' was not declared. Should it be static?
>> warning: symbol 'ni_prime_channelgain_list' was not declared. Should it be static?
>>
>> Signed-off-by: H Hartley Sweeten<hsweeten@visionengravers.com>
>> Cc: Ian Abbott<abbotti@mev.co.uk>
>> Cc: Mori Hess<fmhess@users.sourceforge.net>
>> Cc: Greg Kroah-Hartman<gregkh@linuxfoundation.org>
>>
>> ---
>>
>> diff --git a/drivers/staging/comedi/drivers/ni_mio_common.c b/drivers/staging/comedi/drivers/ni_mio_common.c
>> index fd232bc..3b3a0b1 100644
>> --- a/drivers/staging/comedi/drivers/ni_mio_common.c
>> +++ b/drivers/staging/comedi/drivers/ni_mio_common.c
>> @@ -644,7 +644,7 @@ static void ni_release_ao_mite_channel(struct comedi_device *dev)
>> #endif /* PCIDMA */
>> }
>>
>> -void ni_release_gpct_mite_channel(struct comedi_device *dev,
>> +static void ni_release_gpct_mite_channel(struct comedi_device *dev,
>> unsigned gpct_index)
>> {
>> #ifdef PCIDMA
>> @@ -1880,7 +1880,7 @@ static int ni_ai_insn_read(struct comedi_device *dev,
>> return insn->n;
>> }
>
> This results in a compiler warning about the unused function
> ni_release_gpct_mite_channel when compiling ni_atmio.c. It was unused
> before of course, but now it is static, the compiler realizes it!

Ugh... c code including c code... I didn't notice that until now.

> It could be fixed for now by moving the '#ifdef PCIDMA' and matching
> '#endif' to surround the whole function, though I guess we want to try
> and get rid of the #ifdef's eventually. It's tricky because
> ni_mio_common.c isn't a standalone compilation unit, it's #include'd by
> some other .c files. We might need to have a go at splitting it up at
> some point.

The ni_mio_common.c file should just get turned into a library module.

Right now it's a bit of a mess. The individual drivers define PCIDMA
before including ni_mio_common.c. The only one that sets the define
is ni_pcimio but it's also included by ni_atmio and ni_mio_cs.

I'll look it over and see what might be done to fix it.

Regards,
Hartley



\
 
 \ /
  Last update: 2012-06-06 19:01    [W:1.346 / U:0.200 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site