Re: [PATCH 3/4] Constify struct kset_uevent_ops for 2.6.32-git-053fe57acv2

From: Emese Revfy
Date: Tue Dec 29 2009 - 15:49:00 EST


David Rientjes wrote:
> On Sat, 26 Dec 2009, Emese Revfy wrote:
>
>>>> diff --git a/mm/slub.c b/mm/slub.c
>>>> index 4996fc7..fb63aca 100644
>>>> --- a/mm/slub.c
>>>> +++ b/mm/slub.c
>>>> @@ -4522,7 +4522,7 @@ static int uevent_filter(struct kset *kset, struct kobject *kobj)
>>>> return 0;
>>>> }
>>>>
>>>> -static struct kset_uevent_ops slab_uevent_ops = {
>>>> +static const struct kset_uevent_ops slab_uevent_ops = {
>>>> .filter = uevent_filter,
>>>> };
>>> CC mm/slub.o
>>> mm/slub.c: In function 'slab_sysfs_init':
>>> mm/slub.c:4679: warning: passing argument 2 of 'kset_create_and_add'
>>> discards qualifiers from pointer target type
>>> include/linux/kobject.h:164: note: expected 'struct kset_uevent_ops *'
>>> but argument is of type 'const struct kset_uevent_ops *'
>>>
>>> Hmm?
>>>
>> I double checked both the declaration and definitions of the affected
>> function/structure and they are consistently const here.
>> Can you tell me what patch/tree combination you encountered this warning with?
>> Thanks, Emese
>>
>
> The warning emitted by gcc is pretty explicit; the second formal of
> kset_create_and_add() takes a 'struct kset_uevent_ops *' type while you're
> now passing 'const struct kset_uevent_ops *' as the result of your change.
> That said, kset_create() could probably be modified with the const
> qualifier, but that's outside the scope of your patchset and would have to
> be proposed seperately.

I see what you mean, this was part of [PATCH 1/4] that I forgot to CC to you.
Emese

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