[PATCH 5/6]kernel:module.c variable 'nowarn' set but not used

Geert Uytterhoeven geert at linux-m68k.org
Sat Jun 19 20:23:49 UTC 2010


On Sat, Jun 19, 2010 at 22:10, Justin P. Mattock
<justinmattock at gmail.com> wrote:
> On 06/19/2010 12:45 PM, Geert Uytterhoeven wrote:
>>
>> On Sat, Jun 19, 2010 at 21:10, Justin P. Mattock
>> <justinmattock at gmail.com>  wrote:
>>>
>>> On 06/19/2010 01:08 AM, Geert Uytterhoeven wrote:
>>>>
>>>> On Sat, Jun 19, 2010 at 07:04, Justin P. Mattock
>>>> <justinmattock at gmail.com>    wrote:
>>>>>>
>>>>>> Also wrong, you removed the creation of the links in sysfs.
>>>>>>
>>>>>> The assignment to nowarn was there to avoid another compiler warning,
>>>>>> as sysfs_create_link() is marked __must_check.
>>>>>
>>>>> I also went back to this one and made the following changes.. let me
>>>>> know
>>>>> if
>>>>> it's wrong etc..
>>>>>
>>>>>  From 4f45beed80627d2bb32fb021bb6d22d88089557b Mon Sep 17 00:00:00 2001
>>>>> From: Justin P. Mattock<justinmattock at gmail.com>
>>>>> Date: Fri, 18 Jun 2010 22:01:07 -0700
>>>>> Subject: [PATCH 5/5] module.c
>>>>>  Signed-off-by: Justin P. Mattock<justinmattock at gmail.com>
>>>>>
>>>>> ---
>>>>>  kernel/module.c |    3 +--
>>>>>  1 files changed, 1 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/kernel/module.c b/kernel/module.c
>>>>> index 8c6b428..48fc5c8 100644
>>>>> --- a/kernel/module.c
>>>>> +++ b/kernel/module.c
>>>>> @@ -1340,11 +1340,10 @@ static void add_usage_links(struct module *mod)
>>>>>  {
>>>>>  #ifdef CONFIG_MODULE_UNLOAD
>>>>>        struct module_use *use;
>>>>> -       int nowarn;
>>>>>
>>>>>        mutex_lock(&module_mutex);
>>>>>        list_for_each_entry(use,&mod->target_list, target_list) {
>>>>> -               nowarn = sysfs_create_link(use->target->holders_dir,
>>>>> +               sysfs_create_link(use->target->holders_dir,
>>>>>                                           &mod->mkobj.kobj, mod->name);
>>>>>        }
>>>>>        mutex_unlock(&module_mutex);
>>>>> --
>>>>> 1.7.1.rc1.21.gf3bd6
>>>>>
>>>>> if it looks good, then I can resend it out.
>>>>
>>>> Have you compile-tested this?
>>>> As sysfs_create_link() is marked __must_check, that will cause another
>>>> compiler
>>>> warning, but only if CONFIG_SYSFS=y.
>>>>
>>>> Perhaps you can just mark the nowarn variable __unused?
>>>
>>>
>>> o.k. this builds cleanly without a warning, but is it the right thing
>>> todo?
>>> i.g. rather leave the warning message there and file a bug than just
>>> silence
>>> the issue. Anyways here is what I have:
>>>
>>>  From edbeb2b1ee051218f9e5b93fcb8bbdbf1119a6e4 Mon Sep 17 00:00:00 2001
>>> From: Justin P. Mattock<justinmattock at gmail.com>
>>> Date: Sat, 19 Jun 2010 12:07:32 -0700
>>> Subject: [PATCH 5/5] module.c
>>>  Signed-off-by: Justin P. Mattock<justinmattock at gmail.com>
>>>
>>> ---
>>>  kernel/module.c |    2 +-
>>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/kernel/module.c b/kernel/module.c
>>> index 8c6b428..765bac5 100644
>>> --- a/kernel/module.c
>>> +++ b/kernel/module.c
>>> @@ -1340,7 +1340,7 @@ static void add_usage_links(struct module *mod)
>>>  {
>>>  #ifdef CONFIG_MODULE_UNLOAD
>>>        struct module_use *use;
>>> -       int nowarn;
>>> +       int nowarn __attribute__((unused));
>>
>> The `__attribute__((unused))' should be `__used'.
>>
>
> I'm confused now. how should I write that out?
> (google is not giving me vary many examples on this)

Sorry, I misrememberd there was a #define for it, and could find only __used.
But on closer look, the `__attribute__((unused)` is correct.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds




More information about the Linux-audit mailing list