Re: kobject_add unreachable code

From: Martin Stoilov
Date: Fri Dec 29 2006 - 12:15:37 EST


Olaf Dietsche wrote:
> Martin Stoilov <mstoilov@xxxxxxxxxx> writes:
>
>
>> The following code in kobject_add
>> if (!kobj->k_name)
>> kobj->k_name = kobj->name;
>> if (!kobj->k_name) {
>> pr_debug("kobject attempted to be registered with no name!\n");
>> WARN_ON(1);
>> return -EINVAL;
>> }
>>
>> doesn't look right to me. The second 'if' statement looks useless after
>> the assignment in the first one. May be it was meant to be like:
>> if (!*kobj->k_name)
>>
>
> The second test is true, if kobj->name is NULL as well.
>
And how would that ever be true? kobj->name is a buffer inside kobj:

struct kobject <http://localhost/lxr/http/ident?i=kobject> {
const char * k_name;
char name <http://localhost/lxr/http/ident?i=name>[KOBJ_NAME_LEN <http://localhost/lxr/http/ident?i=KOBJ_NAME_LEN>];

kobj->name will not be NULL, even if kobj itself is NULL.

> Regards, Olaf.
> -
> 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/
>
>

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