Re: [PATCH] Bluetooth: Pre-initialize variables in read_local_oob_ext_data_complete()

From: Geert Uytterhoeven
Date: Mon Apr 20 2015 - 04:47:12 EST


Hi Marcel,

On Fri, Apr 17, 2015 at 10:38 PM, Marcel Holtmann <marcel@xxxxxxxxxxxx> wrote:
>>>> net/bluetooth/mgmt.c: In function âread_local_oob_ext_data_completeâ:
>>>> net/bluetooth/mgmt.c:6474: warning: âr256â may be used uninitialized in this function
>>>> net/bluetooth/mgmt.c:6474: warning: âh256â may be used uninitialized in this function
>>>> net/bluetooth/mgmt.c:6474: warning: âr192â may be used uninitialized in this function
>>>> net/bluetooth/mgmt.c:6474: warning: âh192â may be used uninitialized in this function
>>>>
>>>> While these are false positives, the code can be shortened by
>>>> pre-initializing the hash table pointers and eir_len. This has the side
>>>> effect of killing the compiler warnings.
>>>
>>> can you be a bit specific on which compiler version is this. I fixed one occurrence that seemed valid. However in this case the compiler seems to be just plain stupid. On a gcc 4.9, I am not seeing these for example.
>>
>> gcc 4.1.2. As there were too many false positives, these warnings were
>> disabled in later versions (throwing away the children with the bad water).
>>
>> If you don't like my patch, just drop it. I only look at newly
>> introduced warnings
>> of this kind anyway.
>
> I really do not know what is the best solution here. This is a false positive. And I have been looking at this particular code for a warning that was valid, but we missed initially. But these warnings that you are fixing are clearly false positive.

I only sent patches to fix false positives if I think the patches improve the
code. As this is a subjective matter, it's up to you as the maintainer to
decide.

> If this only happens with an old compiler version, I would tend to leave the code as is. Then again, what is the general preferred approach here?

As this is a false positive, it's clearly up to the maintainer to
decide if the patch
improves the code or not.

Thanks!

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

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